1、项目创建
- 安装命令:
pip install django==3 -i <https://pypi.tuna.tsinghua.edu.cn/simple>
- 上述命令是使用清华镜像,安装django3
- 在项目的创建目录执行命令:
django-admin startproject 项目名称(英文)
- 就可以在指定目录下创建项目
- 创建成功的项目目录如下
python
mysite
manage.py 【管理项目的文件,例如运行,类自动生成数据库表,相当于一个管理工具】
mysite
_init_.py
asgi.py 【此文件不需要修改,同步运行项目,编写socket,处理网络请求】
settings.py 【项目配置文件,例如:连接数据库】
urls.py 【根路由,会创建URL与函数的对应关系】
wsgi.py 【此文件不需要修改,异步运行项目,编写socket,处理网络请求】
2、连接数据库
修改配置文件:setting.py
python
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'HOST': '127.0.0.1', # 数据库主机
'PORT': 3306, # 数据库端口
'USER': 'root', # 数据库用户名
'PASSWORD': 'xxxx', # 数据库用户密码
'NAME': 'name' # 数据库名字
}
}
3、创建app(也就是网站的某个功能模块)
(1) 在终端执行命令:python manage.py startapp web
(2) 上述web是功能模块的名称
(3) 常见以后会增加一个功能模块名称的文件夹,其中的文件包括如下:
python
migrations 【数据库的迁移记录文件夹,不需要修改】
init.py
admin.py 【内部后台管理的配置,基本不用,不需要动】
apps.py 【当前app的名字,不需要修改】
models.py 【数据库,python中的类,转化为sql语句(ORM),经常使用】
tests.py 【单元测试,基本不用】
views.py 【主要写视图函数,根路由,经常使用】
4、注册app
到settings文件中的INSTALLED_APPS中,注册此app
python
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'depart1'
]
5、templates以及静态文件配置
(1)在app中创建templates目录和static目录
(2)templates文件夹中放置页面(这适用于前后端不分离应用,如果先后端分离应用则视情况而定)
(3)在app的views文件中创建各个页面的逻辑函数
(4)如果返回页面,在app的templates目录中创建对应的html,这里需要一个配置
python
//一般在对应APP文件夹下寻找页面,在APP文件夹下创建templates文件夹,来存放此APP的所有页面,需要在settings文件中进行以下注册配置
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'web.apps.WebConfig',
]
6、路由配置
在urls中注册指定的url(基本完成)
python
from django.contrib import admin
from django.urls import path
from django.shortcuts import HttpResponse
from depart1.views import test
from depart1.views import learn
def login(request):
return HttpResponse("登录页面")
urlpatterns = [
path('admin/', admin.site.urls),
path('login/', login),
path("depart1/test/", test),
path("depart1/learn/", learn),
]
7、具体开发
(1) 在views文件中,写视图函数,并指定返回类型
(2) urls导入函数,配置路由