Django系统开发
1.新建项目
- 创建Django项目
- 删除templates目录
- 删除settings.py里templates -> DIRS的列表数据
2.创建app
- 在Pycharm中
- 注册app
在settings.py中找到 INSTALLED_APPS 加入对应路径 app01.apps.App01Config
3.表结构
from django.db import models class Department(models.Model): """ 部门表 """ title = models.CharField(verbose_name='标题', max_length=32) class UserInfo(models.Model): """ 员工表 """ name = models.CharField(verbose_name="姓名", max_length=16) password = models.CharField(verbose_name="密码", max_length=64) age = models.IntegerField(verbose_name="年龄") account = models.DecimalField(verbose_name="账户余额", max_digits=10, decimal_places=2, default=0) create_time = models.DateTimeField(verbose_name="入职时间") # 无约束 # depart_id = models.BigIntegerField(verbose_name="部门ID") # 1.有约束 # - to, 与那张表关联 # - to_field, 表中的那一列关联 # 2.Django自动 # - 写的depart # - 生成数据列 depart_id # 3.部门表被删除 # 3.1 级联删除 # depart = models.ForeignKey(to="Department", to_fields="id", on_delete=models.CASCADE()) # 3.2 置空 # depart = models.ForeignKey(to="Department", to_fields="id", null=True, blank=True, on_delete=models.SET_NULL) # 在jiango中做的约束 gender_choices = ( (1, "男"), (2, "女"), ) gender = models.SmallIntegerField(verbose_name="性别", choices=gender_choices)
4.在MySQL中生成表
- 工具连接MySQL生成数据库。
create database 数据库名字 DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
- 修改配置文件,连接MySQL
- 找到setting.py文件下的DATABASES
- 写入配置
DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': 'Django2', 'USER': 'root', 'PASSWORD': 'abc123.', 'HOST': '127.0.0.1', 'PORT': 3306 } }
- Django命令生成数据表
python manage.py makemigrations python manage.py migrate
- 表结构创建成功
5.静态文件管理
6.部门管理
体验,原始方法做。
Django中提供Form和ModelForm组件(方便)
6.1部门列表
- 框架设计
Step1:在urls.py中写入路径与函数对应关系
Step2:在views.py视图函数中写入路径对应的函数返回HTML文件
Step3:编写depart_list.html样式
Step4:在数据库中添加两条部门数据
insert into app01_department(title) values("IT部门"),("销售部");
Step5:把MySQL数据插入depart.html
Step6:编写添加部门页面
增加一个跳转地址
编写页面
Step7:使新建部门写入数据库
1.在form中指定POST传参,并加入csrf_token使页面能正常跳转
2.在views.py中,写入获得数据,操作数据库,跳转页面内容
Step8:完善删除功能(与数据库关联)
1.在views.py中,获取uid的值,操作数据库删除,跳转到部门列表
2.写入带删除参数的URL
Step8:完善编辑功能(关联数据库)
1.使用正则传参nid
2.获取nid,操作数据库更新,跳转到部门列表
3.展示页面传递默认值
Django系统开发(中):https://developer.aliyun.com/article/1427947