Django 关系属性(django框架主要用来做什么)

网友投稿 299 2022-09-03


Django 关系属性(django框架主要用来做什么)

关于related_name的讲解ManyToMany,ForeginKey

当一张表中外键指向同一个表的字段数大于等于2时,就得使用related_name,在最近的几次学习中发现,

related_name没有想象中那么简单,原本以为只是用于区分(不好好看文档的结果),结果在一次使用formsets

的过程中发现了问题,不管添加了多少子表单,form-TOTAL_FORMS恒不变, prefix后面跟的值永远是NAN,

细心的话就能发现firebug内显示的prefix与自己定义的明显不同,最后在主管的帮助下,问题渐渐明了,我在外键

内定义了related_name,该项就是firebug内显示的prefix,之后在使用反向查询时又出了问题,在Django Doc

里其实有句话说明了这个问题,

​​specify related_name. In the above example, if the ManyToManyField

in Entry had specified related_name='entries', then each Author instance would have an entries attribute

instead of entry_set.

当定义了related_name后”_set”这类查询就被related_name代替了,所以用”_set”会报错。


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Django REST framework(django框架主要用来做什么)
下一篇:Java异常处理机制深入理解
相关文章

 发表评论

暂时没有评论,来抢沙发吧~