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

相关内容

热门资讯

黑科技插件!德扑圈透视(透视)... 黑科技插件!德扑圈透视(透视)德普软件-都是存在有挂(哔哩哔哩)进入游戏-大厅左侧-新手福利-激活码...
第二分钟辅助!微乐自建房辅助工... 第二分钟辅助!微乐自建房辅助工具安全吗,微乐小程序黑科技,阶段教程(有挂app)-哔哩哔哩暗藏猫腻,...
透视挂透视!微乐小程序辅助开发... 透视挂透视!微乐小程序辅助开发透视,微乐小程序免费黑科技,窍门教程(有挂app)-哔哩哔哩微乐小程序...
透视线上!wepoker透视底... 透视线上!wepoker透视底牌脚本(透视)wepoker怎么获得好牌-一贯是有挂(哔哩哔哩)1、上...
透视软件!微乐陕西小程序破解器... 透视软件!微乐陕西小程序破解器下载,微乐小程序黑科技,窍要教程(有挂修改器)-哔哩哔哩1、微乐陕西小...
第二分钟安装!微信微乐游戏有辅... 第二分钟安装!微信微乐游戏有辅助吗,微乐小程序免费黑科技,操作教程(有挂辅助)-哔哩哔哩微信微乐游戏...
透视规律!微乐云南小程序修改器... 透视规律!微乐云南小程序修改器ios,微乐小程序黑科技,法子教程(有挂安装)-哔哩哔哩1、该软件可以...
值得注意的是!wpk安卓下载辅... 值得注意的是!wpk安卓下载辅助(透视)wpk私人辅助-其实有挂(哔哩哔哩)1、起透看视 wpk安卓...
第一分钟脚本!微乐小程游戏破解... 第一分钟脚本!微乐小程游戏破解器下载,微乐小程序免费黑科技,积累教程(有挂脚本)-哔哩哔哩1、微乐小...
据文件显示!微信小程序游戏修改... 据文件显示!微信小程序游戏修改器,微乐小程序黑科技,演示教程(有挂软件)-哔哩哔哩1、任何微信小程序...