python-web应用程序-Django数据库-数据库表设计

python-web应用程序-Django数据库-数据库表设计

在models中创建一个类会自动对数据库进行管理,那么如何用类的声明来实现数据库表的设计呢?

from django.db import models# Create your models here.
class Department(models.Model):title = models.CharField(verbose_name='部门名称',max_length=20)class UserInfo(models.Model):name = models.CharField(verbose_name='姓名',max_length=10)password = models.CharField(verbose_name='密码',max_length=20)age = models.IntegerField(verbose_name='年龄')account = models.DecimalField(verbose_name='账户余额',max_digits=10,decimal_places=2,default=0)crate_time = models.DateTimeField(verbose_name="入职时间")#无约束depart_id = models.BigIntegerField(verbose_name='部门id')"""1.有约束- to ,与那张表关联- to_field ,表中的那一字段关联2.Django自动- 写的dapart- 生成数据列 depart_id3.部门表被删除时- 级联删除dapart = models.ForeignKey(to='Department',to_field='id',on_delete=models.CASCADE)- 置空dapart = models.ForeignKey(to='Department',to_field='id',null=True,blank=True,on_delete=models.SET_NULL)以上均是在数据库中的约束"""dapart = models.ForeignKey(to='Department',to_field='id',null=True,blank=True,on_delete=models.SET_NULL)#在django中做出约束gender_choices = ((1,'男'),(2,'女'))gender = models.SmallIntegerField(verbose_name='性别',choices=gender_choices)

Django连接数据库

1.创建数据库

create database pymysql DEFAULT CHARSET utf8 COLLATE utf8_general_ci;

2.在Django中配置数据库

DATABASES = {'default': {'ENGINE': 'django.db.backends.mysql','NAME': 'pymysql',	#数据库名称'USER':'root','PASSWORD':'123456','HOST':'127.0.0.1','PORT':'3306'}
}

3.根据models中的类自动生成表结构命令

python manage.py makemigrations
python manage.py migrate

也可点击-tools - run manage.py TASK

makemigrations
migrate

部门管理

用最原始的方法做

后续使用Django中提供的Form和ModelForm组件更方便

1.参数传递

前端:

href="/depart/{{ obj.id }}/edit/

urls.py中:

path('depart/<int:nid>/edit/',views.depart_edit)
#<int:nid>:正则表达式,相当于占位符,该位置传递的是nid 的参数。

view.py中

def depart_edit(request,nid):
'''部门'''
#根据nid,获取他的数据[obj,]
row_object = models.Department.objects.filter(id=nid).first()return render(request,'depart_edit.htnl'{"row_object": row_object})

2.模版的继承

对于前端高度重复的部分,可以使用模版继承将不变的继承下来,变化的重写即可

  • 创建一个前端模版layout.html

  • 在需要变化的地方加上

    {% block content %}
    {% endblock %}
    
  • 使用模版,创建一个test.html

    {% extends 'layout.html' %}{% block content %}{% endblock %}
    

    layout.html:

    <! DOCTYPE html><html lang="en "><head>
    <meta charset="UTF-8"><title>Title</title></ head>
    {% block css %}{% endblock % }<body>
    <h1>标题</h1>
    <div>
    {% block content %}{% endblock % }
    </div>
    <h1>底部</h1></ body>{% block js %}{% endblock % }
    </ htm1>
    

    继承模版

    {%  extends 'layout.html' %}
    {% block css %}
    XXXXXX
    {% endblock % }{% block content %}XXXXXXX{% endblock %}{% block js %}
    XXXXXXXX
    {% endblock % }
    

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/847216.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2024年【N2观光车和观光列车司机】考试报名及N2观光车和观光列车司机最新解析

题库来源&#xff1a;安全生产模拟考试一点通公众号小程序 N2观光车和观光列车司机考试报名考前必练&#xff01;安全生产模拟考试一点通每个月更新N2观光车和观光列车司机最新解析题目及答案&#xff01;多做几遍&#xff0c;其实通过N2观光车和观光列车司机很简单。 1、【多…

delphi 语法3

简单类型共包括有六种类型&#xff1a;整型、字符型、布尔型、枚举类型、子界类型、实型。 除实型之外&#xff0c;其它五种类中每一种类型的值域(所有合法的值的集合)中值的数目有限 且其中的值排列有序&#xff0c;其每个值在值域中均有一个序数 n&#xff0c;其前后两个值的…

速盾:怎么查询cdn真实ip?

CDN&#xff08;内容分发网络&#xff09;是一种用于加速网站内容传输的技术&#xff0c;通过在全球各地建立分布式节点服务器来提供更快速的内容传输和更好的用户体验。然而&#xff0c;由于CDN的特殊设计&#xff0c;使得查询CDN真实IP地址变得相对困难。本文将介绍一些常见的…

使用system verilog进行流水灯和VGA打印字符

使用system verilog进行流水灯和VGA打印字符 目录 **使用system verilog进行流水灯和VGA打印字符****system verilog的优点****VGA程序编写**VGA 控制器模块字符生成模块顶层模块测试基准程序**效果** **流水灯程序设计****效果** **总结** system verilog的优点 面向对象编程…

618购物狂欢,好物榜单揭晓!一文了解那些值得入手的数码产品

随着618购物狂欢节的脚步渐近&#xff0c;想必各位消费者已经开始规划自己的购物清单了。毕竟&#xff0c;这样的年度大促是难得的省钱良机&#xff0c;许多平日里心仪已久的大牌商品和高价宝贝都在等待着这一天的优惠。错过了618&#xff0c;恐怕又要等上半年才能遇到如此诱人…

如何制作不限扫描次数的视频二维码?1分钟教程

不可否认的是&#xff0c;视频二维码正在各行各业发挥重要作用。不论是在线上宣传、线下活动&#xff0c;还是产品包装、展览展会上&#xff0c;只需要扫描视频二维码&#xff0c;就能在手机端获得专业的视频教程、查看品牌宣传视频、了解活动流程、快速获取关键信息等&#xf…

图形学初识--深度测试

文章目录 前言正文为什么要有深度测试&#xff1f;画家算法循环遮挡 深度测试当代最常见实现方式&#xff1f;总述什么是z-buffer呢&#xff1f;z-buffer从哪来呢&#xff1f;如何利用z-buffer实现深度测试&#xff1f;举个例子 结尾&#xff1a;喜欢的小伙伴点点关注赞哦! 前言…

【计算机毕设】基于SpringBoot的图书进销存管理系统设计与实现 - 源码免费(私信领取)

免费领取源码 &#xff5c; 项目完整可运行 &#xff5c; v&#xff1a;chengn7890 诚招源码校园代理&#xff01; 1. 研究目的 本研究旨在设计并实现一款基于SpringBoot的图书进销存管理系统&#xff0c;旨在解决图书馆或书店在图书采购、销售和库存管理等方面的问题&#xff…

新手开视频号小店需要做什么准备?只需做好这几个准备,缺一不可

大家好&#xff0c;我是电商花花。 现在视频号小店发展的这么红火&#xff0c;很多人开始在视频号上开始开店&#xff0c;做电商。 目前视频号小店随着流量的市场的保证&#xff0c;不少商家也想通过视频号小店来进行变现。 但是&#xff0c;我们作为一个新手&#xff0c;想…

【ARM 嵌入式 编译系列 2.7 -- GCC 编译优化参数 -fvar-tracking-assignments 详细介绍】

文章目录 -fvar-tracking-assignments作用使用场景怎么使用注意 -fvar-tracking-assignments -fvar-tracking-assignments 是 GCC&#xff08;GNU Compiler Collection&#xff0c;GNU 编译器套件&#xff09;中的一个编译参数&#xff0c;用于优化调试体验。这个选项使得编译…

APP 备案步骤

一、打开阿里云备案系统平台&#xff1a;aliyunbaike.com/go/beian 二、开始备案 三、填写APP名称并进行信息校验 四、填写主办者基础信息和主办者负责人信息 五、填写互联网信息,android打包的APK包可直接上传识别信息&#xff0c;ios需要手动填写信息 公钥和证书SHA-1指纹如…

图片怎么批量转二维码?快速导出批量图片活码的方法

怎么将多张图片快速批量生成二维码&#xff1f;现在用二维码来展示图片在很多的场景下都有应用&#xff0c;这种方式可以有利于用户快速扫码获取内容&#xff0c;提升便利性的同时也可以降低制作者的成本&#xff0c;提供更好的用户体验。有些时候我们需要针对不同的场景或者物…

江苏大信环境科技有限公司:环保领域的开拓者与引领者

2009 年&#xff0c;江苏大信环境科技有限公司在宜兴环保科技工业园成立。自创立之始&#xff0c;该公司便笃定坚守“诚信为本、以质量求生存、以创新谋发展”这一经营理念&#xff0c;全力以赴为客户构建专业的工业有机废气治理整体解决方案&#xff0c;进而成为国家高新技术企…

Streamsets-JDBC模式offset变化逻辑和如何向下传递offset

Streamsets的版本为3.16.0 离线版 offset在jdbc模式中起到非常关键的作用&#xff0c;是滚动查询的基础&#xff0c;offset的准确直接影响数据同步的质量。 本文主要分享一下JDBC Query Consumer中的offset&#xff0c;包括变化逻辑、存储方式、处理器如何获取到最新的offset。…

coze扣子自定义插件使用方式1

1&#xff0c;模型中的工具描述 2&#xff0c;大模型调用&#xff0c;触发接口&#xff1a;

人天软件项目管理复盘

一、项目前期准备 1.1、梳理项目需求 当我们需要开始项目的时候,需从以下内容着手: 1、了解项目的背景(目前是什么现状?该项目是为了解决什么问题?需要达成什么目标?); 2、了解项目需求(需与各业务方关键用户交流即可熟悉现状,也能更好的发现问题进行梳理); 3、项…

Outlook 邮箱使用技巧

良好时间管理的基本原则 Outlook 是帮你管理电子邮件、日历、联系人和任务的工具。 因此&#xff0c;不论是在沟通还是在时间管理中&#xff0c;它都占据着中心位置。 为充分利用 Outlook&#xff0c;我们提出了一些基本原则&#xff1a; 减少阅读邮件的位置。 如果你使用的是…

机器学习的热门领域及应用趋势

机器学习的热门领域及应用趋势 近年来&#xff0c;机器学习&#xff08;Machine Learning, ML&#xff09;已经成为科技领域的热门话题&#xff0c;其在各个行业的应用越来越广泛和深入。本文将详细介绍当前机器学习的几个热门领域&#xff0c;以及人们在这些领域中使用的机器…

数据库漫谈-国产数据库

国产数据库突然大量出现&#xff0c;下表列出&#xff08;按首字母排序 &#xff09; AISWare AntDB&#xff0c;亚信科技。 AliSQL&#xff0c;阿里云。 Analyticdb&#xff0c;阿里云。 ArkDB&#xff0c;北京极数云舟科技有限公司。 CynosDB&#xff0c;腾讯云 DM&…