Django 中设置联合约束和联合索引
创始人
2024-12-27 09:37:57
0
在Django 中对一张表的几个字段进行联合约束和联合索引,例如电商项目购物车的时候,登录的用户和商品两个字段在一起表示唯一记录。 

联合约束参见unique-together官方文档。

举个联合约束和联合索引例子:

class ShoppingCart(models.Model):     """     购物车     """     user = models.ForeignKey(User, verbose_name=u"用户", on_delete=models.CASCADE)     goods = models.ForeignKey(Goods, verbose_name=u"商品", on_delete=models.CASCADE)     nums = models.IntegerField(default=0, verbose_name="购买数量")      add_time = models.DateTimeField(default=datetime.now, verbose_name=u"添加时间")      class Meta:         verbose_name = '购物车'         verbose_name_plural = verbose_name         # 数据库的联合约束,用户和商品唯一,不可重复         unique_together = ("user", "goods")         # 联合索引         index_together = ["user", "goods"] 

最终底层转化为sql语句,如下:

CREATE UNIQUE INDEX index_name ON trade_shoppingcart(user, goods); 

相关内容

热门资讯

七分钟教程!微乐小程序免费黑科... 七分钟教程!微乐小程序免费黑科技,微乐小程序脚本(开挂)切实真的有挂(2026)1)微乐小程序免费黑...
据玩家消息!hhpoker哪个... 据玩家消息!hhpoker哪个俱乐部靠谱(透视)hhpoker是真的还是假的-确实存在有挂(哔哩哔哩...
透视软件!微乐自建房辅助工具安... 透视软件!微乐自建房辅助工具安全吗,微乐小程序黑科技,演示教程(有挂安装)-哔哩哔哩微乐自建房辅助工...
透视存在!微乐小程序免费黑科技... 透视存在!微乐小程序免费黑科技,微乐家乡官方app下载(透视)原来真的是有挂(哔哩哔哩)1、这是跨平...
十分钟工具!微乐小程序免费黑科... 十分钟工具!微乐小程序免费黑科技,微乐小程序晃晃脚本(开挂)切实是真的挂(2026)1、微乐小程序免...
据目击者称!aapoker万能... 据目击者称!aapoker万能辅助器(透视)hhpoker买挂-真是是有挂(哔哩哔哩)1、aapok...
现有说明如下!微乐小程序黑科技... 现有说明如下!微乐小程序黑科技,微乐小程序黑科技app入口(透视)真是有挂(哔哩哔哩)1、该软件可以...
透视系统!微乐自建房插件详细教... 透视系统!微乐自建房插件详细教程,微乐小程序免费黑科技,手册教程(有挂工具)-哔哩哔哩一、微乐自建房...
8分钟辅助!微乐小程序黑科技,... 8分钟辅助!微乐小程序黑科技,微乐小程序挂哪里(开挂)其实有挂(2026)1、微乐小程序黑科技破解器...
第三方辅助!hhpoker德州... 第三方辅助!hhpoker德州透视(透视)hhpoker到底可以透视码-真是是真的挂(哔哩哔哩)hh...