不知道为什么会弹出这个错误。这是我创建的模型 -
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)
这是我访问这些模型的 View -
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, "Unknown column 'appname_usershow.show_id' in 'field list'")
如您所见,我的模型中甚至没有此列?为什么会出现这个错误?
最佳答案
也许您的表架构已更改?此外,运行 syncdb
不会更新已创建的表。
您可能需要删除所有表,然后再次运行 syncdb
。还记得备份您的数据!
关于python - Django 模型 (1054, "Unknown column in ' 字段列表'"),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3787237/