2

ユーザーが情報を挿入できる簡単なフォームを作成しようとしています。ユーザーが送信ボタンをクリックすると、情報が表示されます。

これが views.py のコードです。

from kay.utils import render_to_response
from myapp.form import ContactForm
from myapp.models import NhanThu
# Create your views here.
@login_required
def index(request):
    form_test = ContactForm()
    if request.method =="POST" and form_test.validate(request.form):
        NhanthuModelbien = NhanThu(subject=ContactForm['subject'])
        NhanthuModelbien.put()
        return redirect(url_for('myapp/index'))


    query = NhanthuModelbien.all().order('-created')
    inthuwhat = query.fetch(20)    
    return render_to_response('myapp/index.html',
                              {'form2': form_test.as_widget(),'inthura': inthuwhat})

「UnboundLocalError: 割り当て前に参照されるローカル変数 'NhanthuModelbien'」というエラーを常に受け​​取ります。ここで何が間違っているのか誰でも指摘できますか?

4

1 に答える 1

4

条件request.method =="POST" and form_test.validate(request.form)が false の場合、変数は初期化されません。次に、 query を初期化するときにそれを使用しようとしますquery = NhanthuModelbien.all().order('-created')

それを宣言して、 の前にデフォルト値に初期化するだけですif

于 2012-11-27T03:26:50.237 に答える