pip install django
进入创建项目的目录下,执行命令:
django-admin startproject djangoDemo
进入djangoDemo项目目录,执行启动命令:
python manage.py runserver [ip:port]
ip和port为非必须参数,ip默认是本机ip,port默认是8000
如果启动失败有提示,根据提示执行命令:
python manage.py migrate
然后再次执行启动命令:
python manage.py runserver
在浏览器中请求http://127.0.0.1:8000/,成功访问项目
进入djangoDemo项目目录,执行命令:
python manage.py startapp app
执行完成后,看到项目中会新增一个app模块
在根目录下手动生成一个templates文件,用来存放html文件,并且在setting文件下的TEMPLATES变量中修改属性DIRS
'DIRS': [os.path.join(BASE_DIR, 'templates')],
如果提示
os报错,则在上方添加导入import os
- 1
在templates文件下创建一个html文件,输入一个变量,页面代码参考如下:
DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Titletitle>
head>
<body>
<h1>{{person_list}}h1>
<h1>{{person_list.2}}h1>
body>
html>
在app目录下的views中编写函数用来实现请求html页面,并且传入参数给html中的变量:
def person(request):
person_name = ["卡卡", "梅西", "克洛泽"]
return render(request, "person.html", {"person_list": person_name})
配置路由即urls.py文件,首先导入app文件下的views文件,调用其函数person再配置路径:
from app import views
urlpatterns = [
path('admin/', admin.site.urls),
path('person/', views.person)
]
再次运行python manage.py runserver命令,打开浏览器加入参数:http://127.0.0.1:8000/person/,即可看到刚刚添加的页面
在app项目的__init__.py文件中添加代码如下:
import pymysql
pymysql.install_as_MySQLdb()
在settings.py文件中修改数据库引擎(Django默认使用Sqlit数据库,修改为MySQL数据库)
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'csd-python',
"USER": 'root',
'PASSWORD': 'root',
'HOST': '127.0.0.1',
'PORT': '3306'
}
}
激活应用,在settings.py文件中添加刚刚创建的app应用
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'app',
]
定义模型,在models.py中定义模型
from django.db import models
# Create your models here.
class Grades(models.Model):
gname = models.CharField(max_length=20)
gdate = models.DateTimeField()
ggirlnum = models.IntegerField()
gboynum = models.IntegerField()
isDelete = models.BooleanField(default=False)
class Students(models.Model):
sname = models.CharField(max_length=20)
sgender = models.BooleanField(default=True)
sage = models.IntegerField()
scontend = models.CharField(max_length=20)
sgrade = models.CharField(max_length=20)
isDelete = models.BooleanField(default=False)
在数据库中生成数据表,分两步
1)生成迁移文件,执行命令,此时会在app下生成一个migrations目录
python manage.py makemigrations
2)执行迁移
python manage.py migrate
此时,在数据库中就生成了对应的表结构,如果需要重复执行,且提示No changes detected,则可以先执行python manage.py makemigrations --empty app,将migrations目录的内容进行重置,然后再重复执行即可
进入到项目所在目录下,执行指令:
python manage.py createsuperuser
然后依次输入用户名,邮箱,密码即可创建成功
然后再次启动服务(python manage.py runserver),在浏览器中访问地址http://127.0.0.1:8000/admin,然后输入刚才创建的用户名和密码即可进入
修改settings.py文件,如下,然后刷新页面即可(文件修改实时生效,无需重启)
LANGUAGE_CODE = 'zh-Hans'
TIME_ZONE = 'Asia/Shanghai'