django机制,django和html5的关系
related_name ManyToMany,ForeginKey的解释
当一个表中的外键指向同一个表中的字段数大于或等于2时,就必须使用related_name。最近的研究发现,
related_name没有预期的那么简单。本来以为只是用来区分的(不好看文档的结果),结果发现又用到了formsets。
问题是在的过程中发现的,无论添加多少个子表单,form-TOTAL_FORMS都是常量,前缀后面的值始终是NAN,
如果你细心的话,可以发现firebug中显示的前缀和你定义的明显不一样。最后,在主管的帮助下,问题逐渐明朗。我在外键中
定义了related_name,这是firebug中显示的前缀,然后在使用反向查询时就出现了问题。在Django Doc
事实上,书中有一句话说明了这个问题,
http://docs . django project . com/en/dev/topics/db/queries/#多对多关系
像ForeignKey一样,许多字段可以指定related_name。在上面的示例中,如果ManyToManyField
如果entries指定了related_name=entries ,那么每个Authorinstance都将有一个entries属性
而不是entry_set。
当定义了related_name时,类似“_set”的查询会被related_name替换,所以使用“_set”会产生错误。
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。