一站传媒seo优化,萧山区网站建设,网站建设尾款,logo生成器app目录 一、新建项目 二、创建app 三、设计表结构
四、在MySQL中生成表 五、静态文件管理
六、添加页面
七、模板的继承 一、新建项目 django-admin startproject 员工管理系统 二、创建app startapp app01 三、设计表结构
app01/migrations/models.py
from django.db impo…目录 一、新建项目 二、创建app 三、设计表结构
四、在MySQL中生成表 五、静态文件管理
六、添加页面
七、模板的继承 一、新建项目 django-admin startproject 员工管理系统 二、创建app startapp app01 三、设计表结构
app01/migrations/models.py
from django.db import modelsclass Department(models.Model): 部门表title models.CharField(verbose_name标题, max_length32)class UserInfo(models.Model):员工表name models.CharField(verbose_name姓名, max_length16)password models.CharField(verbose_name密码, max_length64)age models.IntegerField(verbose_name年龄)account models.DecimalField(verbose_name账户余额, decimal_places2, max_digits10, default0) # 小数点后两位最长有10位数字create_time models.DateTimeField(verbose_name入职时间)depart models.ForeignKey(toDepartment, to_fieldid,on_deletemodels.CASCADE)gender_choice ((1, 男),(2, 女),)gender models.SmallIntegerField(verbose_name性别,choicesgender_choice) 无约束
depart_id models.BigIntegerField(verbose_name部门ID)
约束 只能是部门中已经存在的ID
- to与那张表关联
- to_field表中的一列关联
- 写的是depart 生成数据列,depart_iddepart models.ForeignKey(toDepartment,to_fieldid) 删除部分的时候关联的用户 级联删除
depart models.ForeignKey(toDepartment, to_fieldid,on_deletemodels.CASCADE)
ID列置空
depart models.ForeignKey(toDepartment, to_fieldid, null True,blankTrue, on_deletemodels.SET_NULL)
Django中的约束
gender_choices ((1, 男),(2, 女),
)
gender models.SmallIntegerField(verbose_name性别, choicesgender_choices)四、在MySQL中生成表
创建数据库create database StaffManagement DEFAULT CHARSET utf8 COLLATE utf8_general_ci; Django修改配置文件连接数据库 员工管理系统/员工管理系统/setting.py
DATABASES {default: {ENGINE: django.db.backends.mysql,NAME: staffmanagement,USER: root,PASSWORD: 123123,HOST: 127.0.0.1,PORT: 3306,}
}
Django命令生成数据库表
makemigrations migrate 表结构创建成功 五、静态文件管理 部门管理
Django中提供Form和ModelForm组件方便 depart_list.html
{% load static %}
!DOCTYPE html
html langen
headmeta charsetUTF-8titleTitle/titlelink relstylesheet href{% static plugins/bootstrap-3.3.7-dist/css/bootstrap.css %}
/head
body
nav classnavbar navbar-defaultdiv classcontainerdiv classnavbar-headerbutton typebutton classnavbar-toggle collapsed data-togglecollapsedata-target#bs-example-navbar-collapse-1 aria-expandedfalsespan classsr-onlyToggle navigation/spanspan classicon-bar/spanspan classicon-bar/spanspan classicon-bar/span/buttona classnavbar-brand href#联通用户管理系统/a/divdiv classcollapse navbar-collapse idbs-example-navbar-collapse-1ul classnav navbar-navlia href/depart/list/部门管理/a/li/ulul classnav navbar-nav navbar-rightlia href#登录/a/lili classdropdowna href# classdropdown-toggle data-toggledropdown rolebutton aria-haspopuptruearia-expandedfalse登录信息 span classcaret/span/aul classdropdown-menulia href#个人资料/a/lilia href#我的信息/a/lilia href#注销/a/lili roleseparator classdivider/lilia href#Separated link/a/li/ul/li/ul/div/div
/nav
divdiv classcontainerdiv stylemargin-bottom: 10pxa href# classbtn btn-primary btn-successspan classglyphicon glyphicon-plus aria-hiddentrue/span新建部门/a/divtable classtable table-borderedspan classglyphicon glyphicon-th-list aria-hiddentrue/span部门列表theadtrthID/thth名称/thth操作/th/tr/theadtbodytrth scoperow1/thtd销售部/tdtda href classbtn btn-primary btn-xs编辑/aa href classbtn btn-danger btn-xs删除/a/td/tr/tbody/table/div
/div
script src{% static js/jQuery.js %}/script
script src{% static plugins/bootstrap-3.3.7-dist/js/bootstrap.js %}/script
/body
/html
初步结果展示 六、添加页面
需要一个添加页面的话实现效果为点击新建部门跳转到新建部门的窗口 初步创建和编写 编写HTML文件
{% load static %}
!DOCTYPE html
html langen
headmeta charsetUTF-8titleTitle/titlelink relstylesheet href{% static plugins/bootstrap-3.3.7-dist/css/bootstrap.css %}
/head
body
nav classnavbar navbar-defaultdiv classcontainerdiv classnavbar-headerbutton typebutton classnavbar-toggle collapsed data-togglecollapsedata-target#bs-example-navbar-collapse-1 aria-expandedfalsespan classsr-onlyToggle navigation/spanspan classicon-bar/spanspan classicon-bar/spanspan classicon-bar/span/buttona classnavbar-brand href#联通用户管理系统/a/divdiv classcollapse navbar-collapse idbs-example-navbar-collapse-1ul classnav navbar-navlia href/depart/list/部门管理/a/li/ulul classnav navbar-nav navbar-rightlia href#登录/a/lili classdropdowna href# classdropdown-toggle data-toggledropdown rolebutton aria-haspopuptruearia-expandedfalse登录信息 span classcaret/span/aul classdropdown-menulia href#个人资料/a/lilia href#我的信息/a/lilia href#注销/a/lili roleseparator classdivider/lilia href#Separated link/a/li/ul/li/ul/div/div
/navdivdiv classcontainerdiv classpanel panel-defaultdiv classpanel-headingh3 classpanel-title新建部门/h3/divdiv classpanel-bodyformdiv classform-grouplabel forexampleInputEmail1标题/labelinput typetext classform-control placeholder标题 nametitle/divbutton typesubmit classbtn btn-default提交/button/form/div/div/div
/div
script src{% static js/jQuery.js %}/script
script src{% static plugins/bootstrap-3.3.7-dist/js/bootstrap.js %}/script
/body
/html 添加部门
def depart_add(request):添加部门if request.method GET:return render(request, depart_add.html)title request.POST.get(title)models.Department.objects.create(titletitle)# 重定向回定向列表return redirect(/depart/list/)删除部门
def depart_delete(request):删除部门nid request.GET.get(nid)models.Department.objects.filter(idnid).delete()return redirect(/depart/list/)编辑部门 编写HTML文件
{% load static %}
!DOCTYPE html
html langen
headmeta charsetUTF-8titleTitle/titlelink relstylesheet href{% static plugins/bootstrap-3.3.7-dist/css/bootstrap.css %}
/head
body
nav classnavbar navbar-defaultdiv classcontainerdiv classnavbar-headerbutton typebutton classnavbar-toggle collapsed data-togglecollapsedata-target#bs-example-navbar-collapse-1 aria-expandedfalsespan classsr-onlyToggle navigation/spanspan classicon-bar/spanspan classicon-bar/spanspan classicon-bar/span/buttona classnavbar-brand href#联通用户管理系统/a/divdiv classcollapse navbar-collapse idbs-example-navbar-collapse-1ul classnav navbar-navlia href/depart/list/部门管理/a/li/ulul classnav navbar-nav navbar-rightlia href#登录/a/lili classdropdowna href# classdropdown-toggle data-toggledropdown rolebutton aria-haspopuptruearia-expandedfalse登录信息 span classcaret/span/aul classdropdown-menulia href#个人资料/a/lilia href#我的信息/a/lilia href#注销/a/lili roleseparator classdivider/lilia href#Separated link/a/li/ul/li/ul/div/div
/navdivdiv classcontainerdiv classpanel panel-defaultdiv classpanel-headingh3 classpanel-title修改部门/h3/divdiv classpanel-bodyform methodpost{% csrf_token %}div classform-grouplabel forexampleInputEmail1标题/labelinput typetext classform-control placeholder标题 nametitle value{{ row_object.title }}/divbutton typesubmit classbtn btn-default提交/button/form/div/div/div
/div
script src{% static js/jQuery.js %}/script
script src{% static plugins/bootstrap-3.3.7-dist/js/bootstrap.js %}/script
/body
/html
编写view.py
def depart_edit(request, nid):部门编辑if request.method GET:# 根据nid,获取数据row_object models.Department.objects.filter(idnid).first()return render(request, depart_edit.html, {row_object: row_object})# 如果是POST请求,保存修改title request.POST.get(title)models.Department.objects.filter(idnid).update(titletitle)# 重定向回部门列表return redirect(/depart/list/)
七、模板的继承
继承母版 ‘layout.html’
{% extends layout.html %}{% block css %}link relstylesheet href{% static pluxxx.css %}style.../style
{% endblock %}{% block content %}h1首页/h1
{% endblock %}{% block js %}script src{% static js/jqxxxin.js %}/script
{% endblock %}继承的文件
!DOCTYPE html
html langen
headmeta charsetUTF-8titleTitle/titlelink relstylesheet href{% static plugin...min.css %}{% block css %}{% endblock %}
/head
bodyh1标题/h1div{% block content %}{% endblock %}/divh1底部/h1script src{% static js/jquery-3.6.0.min.js %}/script{% block js %}{% endblock %}
/body
/html