这是一个奇怪的现象。也许我错过了,但我搜索了所有 Django 文档和 SF,但找不到答案。我有一个大约有 30 列的表。该表看起来像这样...
Class Customer (models.Model):
customer_id = models.AutoField(primary_key=True)
first_name = models.CharField(max_length=35)
last_name = models.CharField(max_length=35)
middle_initial = models.CharField(max_length=2)
mail_addr1 = models.CharField(max_length=50)
mail_addr2 = models.CharField(max_length=50)
mail_city
mail_state
mail_zip
bill_addr1
bill_addr2
...
...
active_yn = models.ForeignKey('Status', models.DO_NOTHING) # <-- This one
...
...
home
mobile
有问题的字段是“active_yn”。 Django 不断抛出错误,表示它现在是一个有效的字段。 以下是我确信的事情:
- 该表在正确的数据库、架构、表等中肯定有此字段
- 这不是表格中的最后一个字段。
- 此表的inspectdb 也缺少此字段。
- 我删除并重新添加此列,但它仍然没有显示。
- 该字段是 TINYINT(3) - 引用 Django 识别的表。
- 我正在使用 MySQL
我已经尝试调试这个好几天了。有什么想法吗?
最佳答案
谢谢大家的帮助。我发现了这个问题。问题出在数据库方面。我正在使用 root 用户直接连接到数据库。我有与不同用户连接的设置文件,并授予其表和字段。该表的这一字段不在授予该用户的权限中(不是我做的......呃)。无论如何,一旦我添加了这个字段,一切都会按预期进行。
感谢您的所有帮助。希望下一个人会发现这很有用。
干杯!
关于python - Django 没有读取表中的所有列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40619741/