python - “没有这样的列:id” Django AbstractUser 模型
问题描述
我正在尝试迁移并查看管理页面。makemigrations 和 migrate 都通过了,但是当我转到管理 url 时,它显示:“django.db.utils.OperationalError: no such column: social_app_user.id”
一旦我创建了一个 id 字段,它就会更改为“django.db.utils.OperationalError: no such column: social_app_user.password”
我的印象是 AbstractUser 模型包含所有默认用户字段,不确定主键,但无论如何。
请帮忙,谢谢!
注意:这个 models.py 文件中的 'id' 字段是在我收到错误后添加的。
from django.contrib.auth.models import AbstractUser, UserManager
from django.db import models
class User(AbstractUser):
is_verified = models.BooleanField(default=True)
id= models.AutoField(primary_key=True, null=False)
REQUIRED_FIELDS = []
objects = UserManager()
def __str__(self):
f"{self.username} {self.email}"
return
class main_feed(models.Model):
content= models.CharField(unique=True, max_length=255, default='', null=False)
poster = models.ForeignKey('User', related_name='author', on_delete=models.CASCADE, to_field='username')
likes = models.IntegerField(default=0, null=False)
favorites = models.IntegerField(default=0, null=False)
date_posted = models.DateTimeField(auto_now=True)
def __str__(self):
f"{self.content} {self.likes} {self.poster} {self.date_posted}"
return
解决方案
事实证明,我不得不重新启动整个应用程序并再次运行 startapp。这次我在第一次迁移之前添加了用户模型并设置了设置和管理文件。然后一切正常。但我不知道为什么会这样,迁移更新不应该覆盖默认用户模型吗?无论如何,这个问题现在已经回答了。
推荐阅读
- javascript - 为什么传播属性不适用于 React useState 钩子
- excel - 在 Python Pandas 中从 Excel 导入并将元数据标题重新排列为列数据
- django - Django 详细视图查询 - 按外键对象 textchoices 字段过滤
- python - 通过 Pandas 将 CSV 插入 SQLITE:如何避免内存错误?
- excel - 过滤、打印为 PDF 并保存
- reactjs - 根组件中的道具为空
- python - ValueError:检查目标时出错:预期 up_sampling2d_2 有 4 个维度,但得到了形状为 (128, 1) 的数组
- c - C 保存游戏状态,减少传递的变量
- java - Spark 和 Cassandra:要求失败:在类 com.datastax.spark.connector.japi.CassandraRow 中找不到列:[mycolumn...]
- javascript - 在日期范围选择器中显示完整的月份名称