Django model中设置多个字段联合唯一约束
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Django model中设置多个字段联合唯一约束相关的知识,希望对你有一定的参考价值。
1,直接通过 models.ManyToManyField
from django.db import models
class UserInfo(models.Model):
username = models.CharField(max_length=32)
password = models.CharField(max_length=64)
class NewsType(models.Model):
caption = models.CharField(max_length=16)
class News(models.Model):
title = models.CharField(verbose_name=‘标题‘,max_length=32)
url = models.CharField(verbose_name=‘URL‘,max_length=255)
avatar = models.CharField(verbose_name=‘头像‘,max_length=255)
summary = models.CharField(verbose_name=‘简介‘,max_length=255)
new_type = models.ForeignKey(verbose_name=‘新闻类型‘,to="NewsType")
user = models.ForeignKey(verbose_name=‘发布者‘,to=‘UserInfo‘,related_name=‘c‘)
ctime = models.DateTimeField(verbose_name=‘创建时间‘,auto_now_add=True)
like_count = models.IntegerField(default=0)
comment_count = models.IntegerField(default=0)
like = models.ManyToManyField(to=‘UserInfo‘)
class Comment(models.Model):
content = models.CharField(verbose_name=‘评论内容‘,max_length=255)
new = models.ForeignKey(verbose_name=‘评论的新闻ID‘,to=‘News‘)
user = models.ForeignKey(verbose_name=‘评论者‘,to=‘UserInfo‘)
ctime = models.DateTimeField(verbose_name=‘评论时间‘, auto_now_add=True)
以上是关于Django model中设置多个字段联合唯一约束的主要内容,如果未能解决你的问题,请参考以下文章
django项目数据库中 表结构设计 和 同一表中设置多个联合唯一 存在的问题分析
django-ORM-常用字段,常用参数,索引,联合唯一索引,联合索引(不唯一)