Django中model.py定义类

定义基本表

  • 继承自models.Model

定义码

category = models.ForeignKey(Category) #定义外码(1 vs n)
tags = models.ManyToManyField(Tag, blank=True) #(n vs m)
auther = models.ForeignKey(User) #User 是 django 为我们已经写好的用户模型(User 是从 django.contrib.auth.models 导入的。django.contrib.auth 是 django 内置的应用,专门用于处理网站用户的注册、登录等流程)

定义约束

  • null:默认不为空 tags = models.ManyToManyField(Tag, blank=True)

定义字段

CharField

  • max_length:int
  • blank:bool
  • null:bool
  • unique:bool
  • default

TextField

ForeignKey

IntegerField

OneToOneField

DateTimeField

ImageField

  • upload_to:string(如:"upload_imgs\")
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,下面是一个使用 Django 的 `models.py` 创建马匹基本信息表的示例代码: ```python from django.db import models class Horse(models.Model): name = models.CharField(max_length=100) breed = models.CharField(max_length=100) color = models.CharField(max_length=50) birth_year = models.PositiveIntegerField() sex = models.CharField(max_length=10) height = models.DecimalField(max_digits=5, decimal_places=2) weight = models.DecimalField(max_digits=6, decimal_places=2) owner = models.CharField(max_length=100) trainer = models.CharField(max_length=100) jockey = models.CharField(max_length=100) updated_at = models.DateTimeField(auto_now=True) created_at = models.DateTimeField(auto_now_add=True) class Meta: db_table = 'horse' def __str__(self): return self.name ``` 在这个示例,我们创建了一个名为 `Horse` 的 Django 模型,它有以下属性: - `name`:马匹名称,使用 `CharField` 字段型,最大长度为 100 个字符。 - `breed`:马匹品种,使用 `CharField` 字段型,最大长度为 100 个字符。 - `color`:马匹颜色,使用 `CharField` 字段型,最大长度为 50 个字符。 - `birth_year`:马匹出生年份,使用 `PositiveIntegerField` 字段型,存储正整数。 - `sex`:马匹性别,使用 `CharField` 字段型,最大长度为 10 个字符。 - `height`:马匹身高,使用 `DecimalField` 字段型,最多存储 5 位数字和 2 位小数。 - `weight`:马匹体重,使用 `DecimalField` 字段型,最多存储 6 位数字和 2 位小数。 - `owner`:马匹所有者,使用 `CharField` 字段型,最大长度为 100 个字符。 - `trainer`:马匹训练师,使用 `CharField` 字段型,最大长度为 100 个字符。 - `jockey`:骑师,使用 `CharField` 字段型,最大长度为 100 个字符。 - `updated_at`:记录更新时间,使用 `DateTimeField` 字段型,自动更新。 - `created_at`:记录创建时间,使用 `DateTimeField` 字段型,自动添加。 最后,我们使用 `Meta` 定义了表名,并实现了 `__str__` 方法来返回马匹的名称,以便在打印和调试时使用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值