0

Landオブジェクトが保存されないのはなぜですか? エラーを表示しません。

URL :

url(r'^add-object/(?P<id>\d+)/$','app.views.add_object'),

ビュー:

def add_object(request,id):
    a = Animal.objects.get(id=id)
    form = LandForm(request.POST, instance=a)
    if request.method == 'POST':
        if form.is_valid():
            form.animal = a.id
            form.save()
    else:
        form = LandForm(instance=a)
    return render_to_response('add_object.html',{'form':form,},context_instance=RequestContext(request))

モデル:

class Animal(models.Model):
    name = models.CharField(max_length=255)

class Land(models.Model):
    animal = models.ForeignKey(Animal)

フォーム:

class LandForm(ModelForm):
    class Meta:
        model = Land
4

2 に答える 2

0

マルシンは正しい。提出しているフォームが有効かどうかをきちんと確認する必要があると思います。フォームに {{form.field.errors}} が含まれていることを確認してください。これにより、エラーが表示されます。それらを修正してから、フォームを再送信してください。

次のコードを使用して、フォームのすべてのエラーを html ページに出力してチェックすることもできます。

{% for field, errors in form.errors.items %} 
    {% for error in errors %}
于 2013-05-29T13:36:46.050 に答える