如何在 Django 中创建模型包

2023-12-03

拥有相当大的models.py文件(包含多个模型),我正在尝试重构,每个文件一个模型。

因此我试图创建一个models包,结构如下:

  • app/models/__init__.py
  • app/models/first_model.py
  • app/models/second_model.py

不幸的是,我无法让 Django 惰性引用机制正常工作,即:

first_model = models.ForeignKey('app.FirstModel')

返回 Django 找不到模型的错误。

任何想法?谢谢!


它应该可以工作,请确保在 __init__.py 中导入来自 first_model.py 和 secondary_model.py 的所有模型。

from .first_model import FirstModel
from .second_model import SecondModel

编辑:如果您想将模型检索为“app_label.model_name”,那么您必须将它们导入到 __init__.py 中,否则您可以尝试以下操作:

Use https://docs.djangoproject.com/en/2.0/ref/applications/#django.apps.apps.get_model

或者您可以使用 ContentTypes:https://docs.djangoproject.com/en/2.0/ref/contrib/contenttypes/#methods-on-contenttype-in​​stances

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 Django 中创建模型包 的相关文章

随机推荐

  • 为不同包中的对象创建通用转换器

    我有 5 个 Web 服务 A B C D 和 E 每个服务都有自动生成的对象 其结构完全相同 但名称不同且位于不同的包中 com ws a carA contains parameters and com ws a wheelA com
  • Android achartengine 简单饼图

    我正在跟进此链接中的示例和 创建了一个类如下 public class aChartExample public Intent execute Context context int colors new int Color RED Col
  • 在 Keras 中绘制模型

    我正在尝试在 Keras 中绘制我的模型 如下所示 Plot model graph tf keras utils plot model model to file Model1 png from IPython display impor
  • 如何连接 HIVE 中的两个表。

    我有两个表 A 和 B 它们都具有以下结构 Table A Name Age actualdate no Table B City sdate edate id 我希望使用 JOIN 获取 A 和 B 中的所有字段 其中 id no 且 s
  • 查找 int[] 数组中最受欢迎的元素

    int a new int 10 1 2 3 4 5 6 7 7 7 7 我怎样才能写一个方法并返回7 我想让它保持原生状态 而不需要列表 地图或其他助手的帮助 仅数组 试试这个答案 一 数据 int a 1 2 3 4 5 6 7 7 7
  • 静态方法无法访问实例字段?

    我读过很多关于静态字段的文章 静态方法无法访问实例字段 字段 因为实例字段仅存在于该类型的实例上 但我们可以在静态类中创建和访问实例字段 请找到下面的代码 class Program static void Main string args
  • 通过将集合划分为两个子集来查找可以由集合形成的最大总和

    说明 Given a set of numbers S Find maximum sum such that Sum A1 Sum A2 Where A1 S and A2 S and A1 A2 And Sum X is the sum
  • 在 Android 中向 SQLite 表添加一列?

    我想向现有 SQLite 数据库的表中添加另一列 这可能吗 还是我需要做一些特定的事情来升级它 如果是这样 我该如何去做呢 Use the 修改表命令 ALTER TABLE my table ADD COLUMN new column
  • 从 Google 通讯录获取 Google+ ID

    我正在使用 Google Contacts API 提取用户的联系人电子邮件地址和姓名 有没有办法也获得这些人的 Google ID 联系人 API 将返回profile链接 如果 G 个人资料与联系人条目链接 这是一个例子
  • PostgreSQL 中的级联删除

    我有一个数据库 其中有几十个与外键互连的表 一般情况下我想要默认的ON DELETE RESTRICT这些约束的行为 但是 当尝试与顾问共享数据库快照时 我需要删除一些敏感数据 我希望我的记忆DELETE FROM Table CASCAD
  • Laravel Eloquent - 查询数据透视表

    在我的 Laravel 应用程序中 我有三个数据库表 分别称为用户 项目和角色 它们之间存在 m n 关系 因此我还有名为 project user role 的数据透视表 数据透视表包含 user id project id 和 role
  • 如何在执行 MSTest 测试期间写入 Console.Out

    Context 控制台输出未出现是因为后端代码未在测试上下文中运行 你可能最好使用Trace WriteLine 在 System Diagnostics 中 然后添加写入文件的跟踪侦听器 本主题来自MSDN展示了一种执行此操作的方法 根据
  • 使用 XHR2 请求而不是 cordova-file-transfer 将二进制数据下载到应用程序沙箱中

    Cordova 正在 日落 即将弃用 cordovan plugin file 请参阅他们的博文 Cordova 开发社区不会再对文件传输插件进行更多工作 如果您愿意 您可以继续使用文件传输插件 在可预见的将来它应该可以正常工作 我们强烈建
  • Python虚拟机需要CPU来执行字节码吗?

    Python虚拟机需要CPU来执行字节码吗 字节码是否转换为机器码 然后CPU参与该过程 为了在任何计算机上运行应用程序 其代码必须始终以某种方式转换为机器代码 然后由 CPU 执行 问题在于这种情况何时以及如何发生 让我尝试向您展示 Py
  • 在泽西岛调用 SOAP

    我有一个客户的要求 希望围绕 SOAP Web 服务编写一个包装器 REST Web 服务 我对 SOAP 和 REST 都很陌生 谁能告诉我 我们是否可以在 REST Web 服务中调用 SOAP Web 服务 如果是的话 那么在 Jer
  • javascript 将数字除以小数

    我怎样才能将数字 钱 平均除以x数 该数字可以包含一位或两位小数 也可以不包含小数 such as 1000 or 100 2 or 112 34我希望能够将该数字平等地分成 x 部分 但是如果它不是奇数 则将额外的数字添加到最后一个数字
  • 在现有 SqlConnection 中打开 DbContext 连接

    我感兴趣是否打开实体框架DbContext现有 ADO NET 中的连接SqlConnection如果它们都使用相同的连接字符串 即在完全相同的数据库上操作 那么应该不鼓励吗 例如 using TransactionScope scope
  • 将 jRadioButton 添加到 jTable 中

    我正在尝试添加jRadioButton into jTable 我使用了给定的代码 private class CustomCellRenderer extends DefaultTableCellRenderer non Javadoc
  • 将 CSV 字符串与 IN 运算符一起使用时出错

    当我运行以下代码时 declare aaa nvarchar 10 set aaa 1 2 3 Select from Customer where CustomerId in convert nvarchar aaa 10 我收到此错误
  • 如何在 Django 中创建模型包

    拥有相当大的models py文件 包含多个模型 我正在尝试重构 每个文件一个模型 因此我试图创建一个models包 结构如下 app models init py app models first model py app models