對不起,如果這是一個愚蠢的問題,但我是新來的Django,並不能找出什麼是錯的。Django在視圖中的可變增量
我想顯示一個數據庫的一行接一個,按下按鈕後應該改變。目的是翻譯詞彙並檢查它是否正確。
這是我的看法:
counter = 3
def learn(request):
obj = Vokabel.objects.filter(pk=counter)
if request.method == "POST":
form=addE(request.POST)
if form.is_valid():
temp1 = request.POST.get('elearn')
for i in obj:
if temp1 == i.eVok:
counter = counter + 1
return HttpResponseRedirect('/learnnext/')
else:
return HttpResponseRedirect('/learn/')
else:
form = addE()
return render(request, 'learn.html', {'form' : form, 'obj' : obj})
而且我的形式:
class addV(ModelForm):
class Meta:
model = Vokabel
fields= ['eVok', 'dVok']
class addE(forms.Form):
elearn = forms.CharField(label='Uebersetzung', max_length= 100,widget=forms.TextInput(attrs={'autocomplete':'off'}))
然而,這將返回下面的錯誤對我說:
local variable 'counter' referenced before assignment
這與Django不太相關。 「計數器」在哪裏被首先定義,什麼值正在增加? –
爲什麼你會增加計數器呢?你沒有在任何地方使用它。另外,想想你的網站有多個用戶會發生什麼。 –
感謝您的建議。不過,我只是想反擊,每次我點擊一個按鈕都會增加。無論如何,多用戶管理遠遠超過了我的技能水平。然後,我想用這個可變計數器來檢索我的數據庫中的可編輯語言,並且一個接一個地顯示它。 @Moses Koledoye – Jonas