当前位置: 首页 > 面试题库 >

Django模型(1054,““字段列表”中的未知列”)

高山
2023-03-14
问题内容

不知道为什么会弹出此错误。这是我创建的模型-

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

class Shows(models.Model):
    showid= models.CharField(max_length=10, unique=True, db_index=True)
    name  = models.CharField(max_length=256, db_index=True)
    aka   = models.CharField(max_length=256, db_index=True)
    score = models.FloatField()

class UserShow(models.Model):
    user  = models.ForeignKey(User)
    show  = models.ForeignKey(Shows)

这是我访问这些模型的视图-

from django.http import HttpResponse
from django.template import Context
from django.template.loader import get_template
from django.http import HttpResponse, Http404
from django.contrib.auth.models import User

def user_page(request, username):
    try:
        user = User.objects.get(username=username)
    except:
        raise Http404('Requested user not found.')

    shows     = user.usershow_set.all()
    template  = get_template('user_page.html')
    variables = Context({
        'username': username,
        'shows'   : shows})
    output = template.render(variables)
    return HttpResponse(output)

这时我得到一个错误-

OperationalError:(1054,““字段列表”中的未知列“ appname_usershow.show_id””)

如您所见,我的模型中甚至没有此列?为什么会出现此错误?


问题答案:

正如@inception所说,我的表架构已更改并且运行syncdb不会更新已创建的表。

显然,通过更新到模型时syncdb所做的任何更改都不会更改(如在更新/修改中一样)实际表。因此,我删除了相关的数据库并syncdb在空数据库上运行。现在工作正常。:)

对于其他人,Django的 SOUTH
数据迁移工具似乎是最受欢迎的选项。似乎提供了django模型无法实现的选项syncdb。必须退房…

2019年9月29日更新 :从Django
1.7起,迁移已内置到Django的核心中。如果您运行的是较低版本的Django,则可以在BitBucket上找到存储库。



 类似资料:
  • 这是我的xml文件的一个片段:

  • 问题内容: 在我的模型中,我想要一个包含三联列表的字段。例如。是否存在可以将这些数据存储在数据库中的字段? 问题答案: 你可以使用JSON将其转换为字符串并将其存储为字符串。 例如, 你可以在类中添加方法以自动为你转换。

  • 我试图在“Categoria”表和“Noticia”表之间创建一个多对多关系,然后使用工厂生成数据,但我得到了那个错误。我已经创建了一个透视表,但我不知道出了什么问题,我对这个很陌生。。。。 Noticia模型: 名称空间应用程序; 使用Illumb\Database\Elount\Model; 类Noticia扩展模型{ } 类别模型: 支点迁移: 诺西西亚移民 类别迁移: Noticia工厂:

  • 问题内容: 我定义了一个(最终)继承自的类。我想获取为此模型定义的所有字段的列表。例如,。基本上,我想检索从该类继承的任何内容。 我以为我可以利用来检索这些,但是它返回的列表不包含任何这些字段。看起来Django已经掌握了该类,并添加了其所有魔术属性并去除了实际定义的内容。那么…我如何获得这些领域?它们可能具有为自己的内部目的检索它们的功能? 问题答案: 由于大多数答案已过时,因此我将尝试在Dja

  • 所以首先我为我不可靠的解释道歉。我的PHP技能需要认真改进。 错误消息表示“”未知。我知道这不是真的,因为当我创建一个名为“”的变量并回显前者时,我会得到编号。 以下是完整的错误消息: 致命错误:未捕获异常“PDOException”,消息为“SQLSTATE[42S22]:未找到列:C:\xampp\htdocs\loginregister master\addnew中的“字段列表”中的1054

  • 我需要帮助。 使用方法时,在HQL中出现错误: 我猜他必须写而不是 可能是我做错了实体和关系吗? 2个实体-房屋和街道 ER模型: 餐桌街道 ID 名称 houses_id 桌房 ID 名称 我的类: 街道 房屋 我的道小鬼: StreetDaoImp: HouseDaoImpl: 错误: