提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
文章目录
-
需求分析
-
模板变量
-
orm映射操作步骤
- 创建django项目
- 创建django应用
- 配置信息
- 注册app
- 模型类的编写
- 迁移
- 创建超级用户
- 注册模型类
- 写视图函数
- 配置路由
- 启动项目访问
前言
提示:以下是本篇文章正文内容,下面案例可供参考
需求分析
-
创建django项目
django-admin startproject 项目名
-
创建django应用
要进入到项目中创建应用 cd 项目名
django-admin startapp app名
-
配置模板目录---settings.py
在settings.py配置文件中的第54行里的DIRS项
TEMPLATES = [ { 'BACKEND': 'django.template.backends.django.DjangoTemplates', # BASE_DIRS:代表的是当前根目录 templates:代表自己创建的模板目录 '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', ], }, }, ]
-
创建模板文件(html文件)
-
写视图函数---views.py
from django.shortcuts import render # 写视图函数,渲染模板页面 def info(request): # 功能:就是渲染info.html return render(request,'info.html')
-
配置路由
路由分发
1.创建子路由文件
2.在主路由文件中导入子路由文件
3.在子路由文件中配置路由
-
启动项目访问
模板变量
from django.shortcuts import render # 写视图函数,渲染模板页面 def info(request): # 给模板传递变量:模板变量是一个字典类型 content = {"name":"张三","age":20,"gender":"男"} # 功能:就是渲染info.html return render(request,'info.html',content) def info(request): name = "张三" age = 18 gender = "女" address = "郑州" # locals():能将当前函数作用域下的变量和值组合成字典形式的数据 return render(request,'info.html',locals())
orm映射操作步骤
-
创建django项目
-
创建django应用
-
配置信息
-
配置数据库信息
DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', # 数据库类型 'NAME': 'sjk1', # 数据库名 'USER':"root", # 用户名 'PASSWORD':"root", # 数据库的密码 'PORT':3306, # 端口 整型 'HOST':"localhost", # 主机/127.0.0.1 } }
2.注册app
INSTALLED_APPS = [ 'myapp', # 注册app ]
-
-
4.模型类的编写---models.py
模型类就相当于mysql创建数据表
想创建一张学生表
create table student(
id int primary key auto_increament,
name varchar(32),
age int
)
from django.db import models
# 模型类 继承models.Model
class Student(models.Model):
# 字段 类型 约束:最大长度
name = models.CharField(max_length=32,verbose_name="姓名")
# 整型 字段别名 对操作没有影响只是在admin中有变化
age = models.IntegerField(verbose_name="年龄")
class Meta: # 定义元类
verbose_name_plural = "学生" # 模型类的属性,只是在admin后台能看到效果,如果不加默认显示模型类复数
def __str__(self): # 返回对象的描述信息
return self.name # 在后台管理站点中可以看到效果
5.迁移
生成迁移文件
python manage.py makemigrations
迁移时如果报 No changes detected
解决方案:要注册app
在settings.py文件中第33里注册
INSTALLED_APPS = [
'myapp', # 注册app
]
2. 执行迁移文件
python manage.py migrate
迁移成功时在数据库中会默认生成 表名为 app_模型类 的表
6.创建超级用户
python manage.py createsuperuser
7.注册模型类---admin.py
from django.contrib import admin
from myapp.models import Student
# Register your models here.
# 注册Student模型类
# 站点 注册 你自己想要注册的模型类
admin.site.register(Student)
注册成功:
在admin后台会出现一个 模型类s的内容
8.写视图函数
from django.shortcuts import render
from myapp.models import Student
# 从数据库中读取数据
def info(request):
# 获取数据库中的全部数据 模型类.objects.all() 等同于mysql中的 select * from 表
stus = Student.objects.all()
# 给模板传递数据需要是字典类型
content = {"stu":stus}
return render(request,"info.html",content)
9.配置路由
路由分发
1.创建子路由文件
2.在主路由文件中导入子路由文件
3.在子路由中配置路由信息
10.启动项目访问
总结
提示:这里对文章进行总结:
例如:以上就是今天要讲的内容,本文仅仅简单介绍了pandas的使用,而pandas提供了大量能使我们快速便捷地处理数据的函数和方法。