【问题标题】:Django unable to load model into viewsDjango 无法将模型加载到视图中
【发布时间】:2019-11-05 01:31:27
【问题描述】:

我正在尝试将我的模型导入views.py,但我无法这样做。但是,我可以在管理站点上注册它们,但是当我使用在 admin.py 中使用的相同代码将模型导入 views.py 时,出现错误。我正在使用 djongo,所以我不确定这是否会改变有关如何导入它们的任何内容,而且我似乎找不到它的文档。

models.py

from djongo import models

class Round(models.Model):
    round_num = models.IntegerField(default=0)

admin.py

from django.contrib import admin
from .models import Round

admin.site.register(Round)

views.py

from .models import Round

当我尝试运行 views.py 文件时,我收到以下错误:ModuleNotFoundError: No module named 'ma​​in.models'; 'ma​​in' 不是包

另外,我的视图、管理员和模型文件都在同一个目录中。我已经进行了迁移,我可以在 MongoDB 中看到我的 Round 模型。我唯一不能做的就是将它导入到视图中

【问题讨论】:

  • 这是 djongo 输入模型的错字检查模型中的第一行
  • 应该是 django 而不是 djongo
  • 我正在使用 djongo,它是一个库,可以让我连接到 MongoDB,而不是创建 SQL 数据库。我从 djongo 的官方文档中得到了第一行。 nesdis.github.io/djongo/using-django-with-mongodb-data-fields
  • 模型已创建,我可以在我的管理站点上注册它我只是无法在views.py文件中导入它

标签: django django-models django-views django-admin djongo


【解决方案1】:

您的目录中需要有一个__init__.py 文件。它应该在您的main 文件夹内,并且与您的views.pymodels.py 处于同一级别

【讨论】:

  • 我的目录中有 init.py 文件,但它是空的。我应该在里面放什么?
  • 嗯...应该是空的。
  • 还有什么你能想到的吗?
【解决方案2】:

作为一种解决方法,因为模型可以正确迁移到 MongoDB。使用 pymongo,我刚刚连接到 Mongo,并以这种方式将数据渲染到我的视图中。它工作正常,所以如果其他人在加载他们的模型时遇到问题,您总是可以直接连接到数据库。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-08-27
    • 2015-12-05
    • 2015-02-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-02-22
    相关资源
    最近更新 更多