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

相关内容

热门资讯

玩家必看分享"蜀渝牌... 玩家必看分享"蜀渝牌血战到底辅助"开挂(工具)辅助工具详细教程-有挂辅助 【无需打开直接搜索加薇13...
推荐一款"广西微乐小... 广西微乐小程序辅助器 无需打开直接搜索微信:136704302本司针对手游进行,选择我们的四大理由:...
终于懂了"衢州都莱破... 终于懂了"衢州都莱破解器"开挂(平台)辅助平台详细教程-真的有挂;亲,衢州都莱破解器这款游戏原来确实...
教程辅助"德州圈脚本... 较多好评“微乐万能挂官网”开挂(透视)辅助教程 了解更多开挂安装加(136704302)微信号是一款...
1分钟了解"凑一桌游... 1分钟了解"凑一桌游戏春天辅助"开挂(平台)辅助平台详细教程-有挂规律这是一款可以让一直输的玩家,快...
一分钟了解"途游手游... 一分钟了解"途游手游辅助"开挂(安装)辅助安装详细教程-有挂教学这是一款可以让一直输的玩家,快速成为...
最新技巧"哈局八张透... 最新技巧"哈局八张透视辅助"开挂(下载)辅助下载详细教程-证实有挂>>您好:软件加薇13670430...
重大通报"约局吧破解... 【亲,约局吧破解器 这款游戏可以开挂的,确实是有挂的,很多玩家在这款约局吧破解器中打牌都会发现很多用...
推荐一款"渝都麻将辅... 推荐一款"渝都麻将辅助器"开挂(神器)辅助神器详细教程-有挂方法>>您好:软件加薇136704302...
分享一款"钱塘13水... 分享一款"钱塘13水挂件"开挂(脚本)辅助脚本详细教程-详细教程;亲,钱塘13水挂件这款游戏原来确实...