class Test(models.Model):
"""
auto_created=True :自动创建
auto_now = True :修改时间
auto_now_add = True :创建时间
CASCADE :级联删除
default :默认值
error_messages=None :错误提示
help_text :提示文本
unique=True :不允许重复
upload_to :设置上传目录名或文件名
verbose_name :字段的属性名称
"""
# 整数自增类型
models.AutoField
# 一个真/假字段。
models.BooleanField('是否有效', default = True)
models.CharField(max_length=100)
models.CharField('文章大分类', max_length = 20)
models.CharField('标题', max_length = 20, blank = True, null = True, help_text = '标题可以为空')
models.CharField('跳转链接', max_length = 200, default = '#', help_text = '图片跳转的超链接,默认#表示不跳转')
models.DateTimeField(verbose_name = '修改时间', auto_now = True)
models.DateTimeField(verbose_name = '创建时间', auto_now_add = True)
models.DateTimeField(default=timezone.now)
# 多对一关系
models.ForeignKey(BigCategory, on_delete = models.CASCADE, verbose_name = '大分类')
models.ImageField(upload_to = 'avatar/%Y%m%d/', blank = True)
models.IntegerField('阅览量', default = 0)
models.IntegerField('编号', help_text = '编号决定图片播放的顺序,图片不要多于5张')
models.ManyToManyField(Tag, verbose_name = '标签')
models.ManyToManyField(Keyword, verbose_name = '文章关键词',
help_text = '文章关键词,用来作为SEO中keywords,最好使用长尾词,3-4个足够')
# 是某事物的简短标签
models.SlugField(unique = True)
models.TextField()
models.TextField('描述', max_length = 240, default = settings.SITE_DESCRIPTION,
help_text = '用来作为SEO中description,长度参考SEO标准')
models.URLField('友链地址', help_text = '请填写http或https开头的完整形式地址')
models.URLField('个人网址', blank = True, help_text = '提示:网址必须填写以http开头的完整形式')
class Meta:
"""
提示:当您要将一些公共信息放入许多其他模型时,抽象基类很有用。
abstract:抽象基类(这样,该模型将不会用于创建任何数据库表。相反,当将其用作其他模型的基类时,会将其字段添加到子类的字段中。)
app_label:声明其所属的应用程序名称
base_manager_name:告诉Django使用哪个类
default_manager_name:设置默认的manager
db_table:模型的数据库表的名称
get_latest_by:获取一个字段
order_with_respect_to:对选中的字段安排合理的顺序
ordering:安排顺序
permissions:创建此对象时可进入权限表的额外权限
default_permissions:可以自定义此列表
proxy:是否是代理模型
indexes:模型上定义的索引列表
verbose_name:对象的名称
verbose_name_plural:对象的复数名称
"""
abstract = True
verbose_name = '大分类'
verbose_name_plural = verbose_name
ordering = ('-created',) # '-created' 表明数据应该以倒序排列
def __str__(self):
"""
返回一个或多个字段
"""
def get_absolute_url(self):
"""
告诉Django如何计算对象的规范URL
"""
def get_pre(self):
"""
获取上一个对象
"""
def get_next(self):
"""
获取下一个对象
"""
def items(self):
"""
需要显示的内容条目,这个可以自己挑选一些热门或者最新的博客
"""
def item_title(self, item):
"""
显示的内容的标题,这个才是最主要的东西
"""
def item_description(self, item):
"""
显示的内容的描述
"""
models模型的基础属性和方法(可以理解为数据库中操作库,表,字段的语法)
最新推荐文章于 2022-07-18 20:41:52 发布