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); 

相关内容

热门资讯

不少玩家反映!金虎爷辅助器,随... 不少玩家反映!金虎爷辅助器,随意玩有没有辅助(一直真的是有工具)-哔哩哔哩1、下载好随意玩有没有辅助...
据悉!鱼乐达人辅助修改器,天天... 据悉!鱼乐达人辅助修改器,天天爱消除自动消除辅助(原来是真的app)-哔哩哔哩1、天天爱消除自动消除...
现有关情况通报如下!闲逸斗地主... 现有关情况通报如下!闲逸斗地主辅助,陕西三带辅助(都是有挂修改器)-哔哩哔哩闲逸斗地主辅助能透视中分...
值得注意的是!雀友会潮汕辅助器... 值得注意的是!雀友会潮汕辅助器,奇迹免费自动挂机脚本(都是是真的脚本)-哔哩哔哩1、奇迹免费自动挂机...
不少玩家反映!中至赣牌圈插件,... 不少玩家反映!中至赣牌圈插件,暗宝破解器(本来是有下载)-哔哩哔哩1、点击下载安装,中至赣牌圈插件脚...
无独有偶!打罗松必胜技巧,超级... 无独有偶!打罗松必胜技巧,超级三加一辅助工具安装(一贯真的是有插件)-哔哩哔哩1、上手简单,内置详细...
此事引发网友热议!广东闲来有辅... 此事引发网友热议!广东闲来有辅助软件,陕麻圈延安划水辅助(本来是有修改器)-哔哩哔哩陕麻圈延安划水辅...
据相关数据显示!闲逸碰胡辅助软... 据相关数据显示!闲逸碰胡辅助软件下载,卡五星游戏源码(都是真的有工具)-哔哩哔哩闲逸碰胡辅助软件下载...
日前!wepoker辅助软件价... 日前!wepoker辅助软件价格,关春天辅助凑一桌(真是是有挂)-哔哩哔哩1、wepoker辅助软件...
此事备受玩家关注!新玄龙辅助工... 此事备受玩家关注!新玄龙辅助工具,创思维正版辅助器下载(都是存在有修改器)-哔哩哔哩创思维正版辅助器...