为什么Django _meta 分开存储字段和many_to_many 字段?

发布于 2024-12-22 09:35:05 字数 295 浏览 0 评论 0原文

我是 django/python 的初学者。我使用 _meta 来访问 django 模型的字段。我使用_meta.fields来访问字段,使用_meta.many_to_many来访问ma​​ny_to_many字段。 django 如此单独存储字段的原因是什么? Many_to_fields 可能包含在字段本身中,并且类型指定为 ManyToManyField 或更合适的类型。

初学者将非常感谢指导。 :)

I am a beginner in django/python.I am using _meta to access the fields of a django model. I use _meta.fields to access the fields and _meta.many_to_many to access the many_to_many fields. What are the reasons that makes django store the fields so separately? It could be that the many_to_fields are included in the fields itself and the type specified as ManyToManyField or something that is more appropriate.

Guidance would be highly appreciated by a beginner. :)

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

篱下浅笙歌 2024-12-29 09:35:05

原因是字段有一些区别:

  • “普通”字段可以通过简单查询来检索,而m2m字段需要JOIN;
  • m2m 领域可以有(并且有)中间模型来连接,“普通”领域则不能;
  • “普通”字段仅返回单个对象,m2m 字段返回查询集。

The reason is that the fields have some differencies:

  • "normal" field can be retrireved with simple query, while m2m field needs JOIN;
  • m2m field can have (and has) intemediate model to connect through, "normal" field can't;
  • "normal" field just returns single object, m2m field returns queryset.
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文