【问题标题】:Error at OneToOneField in models while creating new models class django创建新模型类 django 时模型中的 OneToOneField 出错
【发布时间】:2019-02-26 12:59:18
【问题描述】:

我在创建新模型类时遇到以下错误。 错误仅在“user = models.OneToOneField(User)”这一行弹出 "E1120: 构造函数调用中参数 'on_delete' 没有值"

部分/models.py

from django.db import models
from django.contrib.auth.models import User

class userProfile(models.Model):
    user = models.OneToOneField(User)

admin.py

from django.contrib import admin
from section.models import userProfile

admin.site.register(userProfile)

如果我使用“on_delete=models.CASCADE”添加以下条目

user = models.OneToOneField(User,on_delete=models.CASCADE)

错误得到了解决,但新类“userProfile”没有出现在管理页面中,在用户选项卡下。

同时运行迁移:

C:\Users\srini\djangoProjects\college>python manage.py makemigrations
No changes detected

C:\Users\srini\djangoProjects\college>python manage.py migrate
Operations to perform:
Apply all migrations: admin, auth, contenttypes, sessions
Running migrations:
No migrations to apply.

有人可以指导我如何解决这个问题吗?

【问题讨论】:

  • 您是否为此模型添加了ModelAdmin
  • 是的,用管理员条目更新了我的问题。
  • 你运行迁移了吗?
  • 是的,添加了有问题的迁移输出,请查看,它说没有检测到变化。
  • 试试这个:python manage.py makemigrations >> python manage.py migrate --fake-initial

标签: django django-models


【解决方案1】:

将您的 app_name 包含在 settings.py 的 INSTALLED_APPS 列表中。

然后尝试迁移。然后在运行服务器后检查 Admin。

【讨论】:

  • Treied ,得到以下错误“ModuleNotFoundError: No module named 'sectiondjango'”
  • 有什么建议吗?
  • 能否请您发布设置文件中的代码。
猜你喜欢
  • 1970-01-01
  • 2014-06-26
  • 2022-08-18
  • 1970-01-01
  • 1970-01-01
  • 2016-03-10
  • 2016-10-24
  • 1970-01-01
  • 2015-12-06
相关资源
最近更新 更多