本篇内容介绍了“Django model怎么自定义指定主键”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
我最近在做一个新项目,数据工程师在数据库中已经新建了一些表,并且数据表中已经填充了数据,但是我用 django 写的项目中需要用到这些数据表,开发中我使用了 django 的 ORM ,所以需要创建模型 model ,但是有些数据表已经存在了,并且有些表的主键并不是 id 这个字段,django 是默认为模型添加 id 这个字段,并且设置为主键和让其自增。所以我最开始是对现有数据表的表结构进行更改,增加了 id 字段,并且为 id 赋值,将主键设置成id。后来因为数据表的主键变了,之前写的爬取数据的脚本出了一些问题,数据表出现了很多重复的数据。最后去重是通过 sql 语句进行去重处理的。
delete from video_data where id not in ( select temp.min_id from ( select min(id) min_id from video_data group by aweme_id ) as temp
回到标题,后来我在必应上搜了一下 django model 自定义主键,并且参考了 django 的官方文档,得到了解决办法。如果想自定义指定模型的主键,可以在想要设置为主键字段上设置参数 primary_key=True 。
例如:
aweme_id = models.BigIntegerField(verbose_name="作品id", db_index=True, primary_key=True)
这样,模型的主键就改成了 aweme_id 这个字段。
“Django model怎么自定义指定主键”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注亿速云网站,小编将为大家输出更多高质量的实用文章!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。