
基于django快速开发一个网站(一)
发布日期:2021-05-09 09:14:31
浏览次数:16
分类:博客文章
本文共 4467 字,大约阅读时间需要 14 分钟。
* 创建虚拟环境、基于虚拟环境创建django==2.0.0和图片加载库和mysql数据库驱动
1. 创建目录并创建虚拟环境
╰$ mkdir Cornucopiavirtualenv╰$ cd Cornucopiavirtualenv╰$ virtualenv env1
2. 进入bin目录,并激活虚拟环境
╰$ cd bin
╰$ source activate3. 进入环境、创建django和Pillow、PyMySQL
╰$ pip install django==2.0.0╰$ pip install pillow╰$ pip install pymysql或者也可以╰$ pip install pymysql pillow django==2.0.0
4. 创建Cornucopia的项目并设置book模块,并设置中文和中国上海的时区
╰$ django-admin startproject Cornucopia╰$ python3 manage.py startapp book
4-1. 设置中文和中国上海的时区(在settings.py中修改)
LANGUAGE_CODE = 'zh-hans'TIME_ZONE = 'Asia/Shanghai'
5. 创建model模型数据
class User(models.Model): nickname = models.CharField(max_length=50, blank=True) email = models.EmailField('email address', blank=True, unique=True) def __str__(self): return self.nicknameclass Category(models.Model): name = models.CharField('分类名称', max_length=128) def __str__(self): return self.name class Meta: verbose_name = '书籍分类' verbose_name_plural = verbose_nameclass Tag(models.Model): name = models.CharField('标签', max_length=128) def __str__(self): return self.name class Meta: verbose_name = '书籍标签' verbose_name_plural = verbose_nameclass Entry(models.Model): title = models.CharField('文章标题', max_length=128) author = models.ForeignKey(User, verbose_name='作者', on_delete=models.CASCADE) book_imge = models.ImageField(upload_to='blog_img', null=True, blank=True, verbose_name='书籍配图') # body = models.TextField('正文', ) body = MDTextField() # abstract = models.TextField('摘要', max_length=256, null=True, blank=True) abstract = MDTextField() visiting = models.PositiveIntegerField('访问量', default=0) category = models.ManyToManyField('Category', verbose_name='博客分类') tags = models.ManyToManyField('Tag', verbose_name='标签') created_time = models.DateTimeField('创建时间', auto_now_add=True) modifyed_time = models.DateTimeField('修改时间', auto_now=True) def __str__(self): return self.title class Meta: ordering = ['-created_time'] verbose_name = ' 书籍正文' verbose_name_plural = verbose_name
6. 设置数据库链接方式在settings.py中修改
import pymysqlpymysql.install_as_MySQLdb()DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': 'books', # 数据库名字 'USER': 'root', # 账号 'PASSWORD': '', # 密码 'HOST': 'localhost', # IP 'PORT': '3306', # 端口 } # 'default': { # 'ENGINE': 'django.db.backends.sqlite3', # 'NAME': os.path.join(BASE_DIR, 'db.sqlite3'), # }}
7. 将新的模块book加入系统中
# Application definitionINSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'book',]
8. 迁移数据、到数据库
╰$ python3 manage.py makemigrations╰$ python3 manage.py migrate
9. 创建超级管理员,根据提示一步一步来
╰$ python3 manage.py createsuperuser
10. 在urls.py中进行路由配置
from django.conf.urls import url, includefrom django.contrib import adminurlpatterns = [ url(r'admin/', admin.site.urls), url(r'^', include('book.urls')),]
11. 在book模块中,创建urls.py配置路由
from django.conf.urls import urlfrom . import viewsapp_name = 'book'urlpatterns = [ url(r'^$', views.index, name='book_index'), url(r'^(?P[0-9]+)', views.detail, name='book_detail'),]
12. 配置前端页面在Cornucopia/book下创建templates/book,两个目录,在settings.py配置templates路径
TEMPLATES = [ { 'BACKEND': 'django.template.backends.django.DjangoTemplates', 'DIRS': [os.path.join(BASE_DIR, 'templates')], 'APP_DIRS': True, 'OPTIONS': { 'context_processors': [ 'django.template.context_processors.debug', 'django.template.context_processors.request', 'django.contrib.auth.context_processors.auth', 'django.contrib.messages.context_processors.messages', ], }, },]
13. 创建index.html和detail.html
14.配置静态文件目录在Cornucopia/book下创建static/css,两个目录,在settings.py配置templates路径
STATIC_URL = '/static/'STATICFILES_DIRS = [ os.path.join(BASE_DIR, 'static').replace('\\', '/'),]
15.admin.py配置后台现在内容
from django.contrib import adminfrom . import modelsclass EntryAdmin(admin.ModelAdmin): list_display = ['title','author','visiting','created_time','modifyed_time']admin.site.register(models.Category)admin.site.register(models.Tag)admin.site.register(models.Entry,EntryAdmin)
16.启动程序、登入后台
╰$ python3 manage.py runserver 127.0.0.1:8001
发表评论
最新留言
路过,博主的博客真漂亮。。
[***.116.15.85]2025年04月24日 21时03分54秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
TextWiew单个线条
2019-03-11
Android Studio updating indices 一直刷新和闪烁
2019-03-11
个人购买服务器问题?
2019-03-11
pwntools编写技巧
2019-03-11
How2Heap笔记(三)
2019-03-11
go--microSocket服务端 php客户端
2019-03-11
如何修改Pspice元件库中元件的模型参数?
2019-03-11
小程序提交新数据后如何返回上一页并刷新数据?
2019-03-11
qt c++实现的ai贪吃蛇吃满屏幕,超详细!(二)ai的具体实现
2019-03-11
linux 查看log日志相关命令
2019-03-11
IDEA 2019 安装 mybatis-plus插件
2019-03-11
div 实现光标悬停变成手型
2019-03-11
layer.confirm 无效
2019-03-11
Java 回调机制
2019-03-11
7、回归和特征选择
2019-03-11
pycharm使用(新建工程、字体修改、调试)
2019-03-11
什么是Numpy、Numpy教程
2019-03-11
Python学习笔记——元组
2019-03-11
异常声音检测
2019-03-11