Django 1054未知字段错误

时间:2014-08-21 14:35:04

标签: django foreign-keys migration

我尝试将新的外键添加到我的现有模型中,但是我遇到了从UI保存值的问题。当我到达相关页面时,数据会正确填充,但是当我尝试保存更改外键时,我会得到一个1054"未知列' schedule_id'在'字段列表'"错误。奇怪的是,如果我刷新页面,无论错误如何,都会保存更改。

相关型号:

class Group(BaseModel):
    code = CharField()
    name = CharField()
    calendar = models.ForeignKey(Calendar)
    schedule = models.ForeignKey(Schedule, null=True, blank=True, default=None) # this is the new FK

class Schedule(BaseModel):
    code = CharField()
    name = CharField()
    description = CharField()
    #various integer fields

我使用South进行数据库迁移:

def forwards(self, orm):
    db.add_column('group', 'schedule',
        self.gf('django.db.models.fields.related.ForeignKey')\
        (to=orm['app.Schedule'], blank=True, null=True)\
    )

视图非常简单:

def api_group(jsonDict, request):
    if request.method == "POST":
        #other handlers
        elif operation == "edit":
            _update_group(request)

def _update_group(request):
    group = Group.objects.get(id=request.POST.get('id'))
    formData = request.POST.copy()
    form = GroupForm(formData, instance=group)
    if form.is_valid():
        form.save()

class GroupForm(renderutils.BaseModelForm):
    id = forms.CharField(widget=forms.HiddenInput())
    class Meta(renderutils.BaseModelForm.Meta):
        model = Group

当我看到'组'表,我可以看到名为' schedule_id'的字段。正确的值是在保存时分配的,我只是不明白为什么在没有出错的情况下引发错误?我曾尝试过多次向前和向后移动,以确保它不会出现问题。

0 个答案:

没有答案