# 创建项目:
django-admin startproject 项目名称
# 创建应用:
diango-admin startapp 应用名称
# 运行项目:
python manage.py runserver
# web端页面展示:
# 1、在应用目录下找到views.py文件,写入试图路由
# 1》、引入包文件:from django.http import HttpResponse
# 2》、定义视图文件:
def 方法名 (requerst):
return HttpResponse('内容')
# 2、在应用目录下注册路由文件urls.py,写入引入的试图、路由
# 1》、注册路由文件urls.py引入包文件:from django.urls import path, include
# 2》、注册路由文件urls.py引入views.py视图文件:import h5.views
# 3》、注册路由文件urls.py将视图文件写入路由数组里:
urlpatterns = [
path('index', h5.views.index),
]
# 3、项目路由引入应用的路由和路由包、写入到路由:
# 1》、引入包文件:from django.urls import path, include
# 2》、将应用路由文件写入路由数组里:
urlpatterns = [
path('index', include('应用文件下.urls')),
]
# 4、添加应用settings.py里找到INSTALLED_APPS数组:'应用名 .apps.首字母大写的应用名Config',
# web端显示html界面
# 1、修改应用下views.py文件
# 1》、在上面的案例基础上,应用层下引入render: from django.shortcuts import render
# 2》、返回到界面:return render(request , 'index.html' , {'key':values})
# 3》、案例:
from django.shortcuts import render
from django.http import HttpResponse
def index(request):
values= "Hello, world. You're at the polls index."
return render(request , 'index.html' , {'key':values})
# 2、修改配置文件:seetings.py文件下的 TEMPLATES里的DIRS[]
# 1》、创建对应的文件目录,其中:B'ASE_DIR'代表根目录、'+'代表拼接
# 2》、具体案例:
TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
# html界面*****************开始
'DIRS': [
BASE_DIR+"/templates",
],
# html界面*****************结束
'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',
],
},
},
]
# 3、html页面输出
# 1》、双{} 来接值:{{ context下的数组的键名 }}
# 2》、<h1>{{ index }}</h1>
# 连接数据库:找到seeting.py文件,头部加上注释: # -*- coding: UTF-8 -*- 找到DATABASES数组
# 1、代码案例:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'test',
'USER': 'root',
'PASSWORD': '123456',
'HOST':'localhost',
'PORT':'3306',
# 默认配置
# 'ENGINE': 'django.db.backends.sqlite3',
# 'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
}
}
# 2、找到项目下的__init__.py文件,添加2行代码,案例如下:
import pymysql
pymysql.install_as_MySQLdb()
# 3、找到python目录下E:\Python\Lib\site-packages\django\db\backends\mysql的base.py文件,注释
if version < (1, 3, 13):
raise ImproperlyConfigured('mysqlclient 1.3.13 or newer is required; you have %s.' % Database.__version__)
# 4、找到python目录下E:\Python\Lib\site-packages\django\db\backends\mysql的operation.py文件,修改
query = query.decode(errors='replace')修改成query = query.encode(errors='replace')
# sqlite3或者mysql数据库创建用户
# 1、生成迁移表:python manage.py migrate
# 2、创建用户:python manage.py createsuperuser 根据提示输出结果
# 接值格式:request.POST.get('username') / request.POST['username']
# django2.2需要打开安装目录,找到django/views/debug.py的311行
# 使用:with Path(CURRENT_DIR, 'templates', 'technical_500.html').open(encoding="utf-8") as fh:
# 注释:with Path(CURRENT_DIR, 'templates', 'technical_500.html').open() as fh:
# 添加数据库:应用下的models.py新增class类:,对应的表名就是 应用名_类名,对应字段···案例:
class user(models.Model):
name = models.CharField( max_length=20)
token = models.CharField( max_length=20)
createTime = models.DateField( auto_now=true)
# views.py添加数据:
# 1、引入应用下的models.py:from h5 import models
# 2、添加数据:models.user.objects.create(name='name', token='token', createTime='1234567890').save()
# 3、删除数据:models.user.objects.filter(name='name', token='token', createTime='1234567890').delete()
# 4、查询数据:models.user.objects.filter(name='name', token='token', createTime='1234567890')
# 5、查询全部数据:models.user.objects.all()