一、创建新应用
在python的终端窗口下执行以下命令,如图:
python manage.py startapp userapp
上图中的全局模块和app模块要分清,下文多次要用到。
二、配置 Model 层 (mysql 数据库)
- 提前安装 mysqlclient 扩展库,打开 cmd 窗口执行(或通过whl文件安装):
pip install mysqlclient
- 打开全局 settings.py 文件,修改以下两部分:
#配置数据库
DATABASES = {
' default': {
'ENGINE': 'django.db.backends.mysql', #修改为相应数据库引擎,这里以mysql举例
'NAME': 'django', #要连接的数据库名(已创建的数据库)
'HOST': 'localhost',
'PORT': 3306, #端口号
'USER': 'root', #登录数据库的用户名
'PASSWORD': '123456', #登录数据库的密码
}
}
#在最后一行加入新创建的app名
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'userapp', #新创建app
]
- 打开app下 models.py:根据需要创建 Model 类,举例:
from django.db import models
# Create your models here.
class User(models.Model):
name = models.CharField(max_length=10)
password = models.CharField(max_length=20)
class Meta:
db_table = 't_user' #自定义数据表名
- 打开pycharm终端窗口,执行以下两条命令:
python manage.py makemigrations #生成迁移文件记录
python manage.py migrate #执行迁移操作,Django会根据 Model类在数据库中创建相应的表
三、URL 路径配置
打开全局 urls.py,进行全局 url 配置
from django.urls import path,include #导入include模块,如果用正则表达式导入re模块
urlpatterns = [
path('admin/', admin.site.urls), #系统创建的路径映射
path('userapp/', include('userapp.urls')), #路径注意斜杠位置在最后;include()中是app的urls.py的路径,注意加引号
]
配置工作已经完成,之后就可以根据目标功能在 自定义的 app模块下的view.py 中写视图函数,在Template文件夹下编制html页面了。
四、配置静态资源查找路径
在网页经常要回显图片,调用css、js文件,后台服务器会根据全局 settings.py 文件中的配置寻找静态资源。在全局 setting.py中做如下配置:
STATIC_URL = '/static/' #从当前app下的static目录开始寻找,初始就有
STATICFILES_DIRS = [os.path.join(BASE_DIR, 'static')] #从根目录下的static目录开始寻找,需要手动配置
相应在根目录下创建一个static目录,在该目录下还可按照app文件名再创建子目录以便模块化开发。
五、配置session存活周期
session的默认存活周期为两周,如果要设置为在浏览器关闭时清除session,需要在全局settings.py中配置:
SESSION_EXPIRE_AT_BROWSER_CLOSE = True