翼度科技»论坛 编程开发 python 查看内容

Django连接数据库

10

主题

10

帖子

30

积分

新手上路

Rank: 1

积分
30
Mysql配置

搭建mysql服务,保证能正常运行
pip install mysqlclient
Setting配置数据库

如下是mysql数据库的配置

 同步数据库

先生成表结构,检查是否有表结构变更:python manage.py makemigrations
再同步数据库:python manage.py migrate

同步完成后查看数据库能看到生成的表,如下

设计表

在models.py中根据需要编写表模型,如下,再通过python manage.py makemigrations和python manage.py migrate命令将表同步至数据库

同步完成后可以在数据库中看到表,如下,表名会以 appname_ 开头


 设计表时常用的一些参数


  • 主键:如果没有设计主键,则默认id就是主键,如上图id为主键
    也可自定义主键:primary_key=True,如 uid = models.IntegerField(primary_key=True) 就是设置uid为主Email:models.EmailField() 会自动检验Email格式

  • 默认值:models.CharField(default="xxx")  用default参数设置默认值
  • 最大长度:models.CharField(max_length=10)  用max_length设置字段最大长度,Int最大长度11,Biginter最大长度20
  • 空:name = models.CharField(null=True,blank=True,default='xx')

    • null=True,表示数据库创建时该字段可不填,用NULL填充
    • blank=True,表示代码中创建数据库记录时该字段可传空白(空串,空字符串)

  • 文本类型:text = models.TextField(null=True, blank=True)
  • 图片类型:img = models.ImageField()
  • 时间类型:timestr = models.DateTimeField() #日期+时间类型,2023-12-12 23:34:44

    date = models.DateField() #日期类型,2023-12-12

    time = models.TimeField() #时间类型,23:34:44  



    • auto_now 自动创建---无论添加或修改,都是当前操作的时间 updatetime = models.DateTimeField(auto_now=True)
    • auto_now_add 自动创建---永远是创建时的时间  creattime = models.DateTimeField(auto_now_add=True)

  • 文件类型:file = models.FileField()
  • 布尔值:status = models.BooleanField()
 

来源:https://www.cnblogs.com/roselearn/p/17075119.html
免责声明:由于采集信息均来自互联网,如果侵犯了您的权益,请联系我们【E-Mail:cb@itdo.tech】 我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x

举报 回复 使用道具