2011-12-08 29 views
-3

可能重複:
python/django adderHTML表單的Django

我是新Django和tryed做一個網站,把我的號碼(從HTML的輸入),並添加/把它減去另一個。

所以我views.py tryed這一點:

def calc(request): 
    try:  
     i1 = int(request.GET['i1']) 
     i2 = int(request.GET['i2']) 
    except MultiValueDictKeyError: 
     raise Http404() 
    u = i2 + i1 
    return ("answer.html", u) 

我也表現出這個其他一些人,他們告訴我,做一個「鏈接/債券」的HTML,我怎麼能做出這樣的鏈接而不使用數據庫?

編輯:我很對不起你們,我開始從Djangobook學習Django和他們並沒有很清楚地解釋它作爲你們或文檔,誠摯的歉意

+3

你的問題沒有任何意義:特別是最後一行。請修改。 –

回答

3

好吧,我要回答這個問題,所以我們可以完成這個問題,這也是昨天發佈的。我不想在這裏粗魯,但你真的需要做一些研究,閱讀一些教程等,之前問一個問題,並沒有真正的意義。我堅持在視圖中的窗體的保存邏輯,以便您可以看到發生了什麼。

#forms.py 
from django import forms 

class AdditionForm(forms.Form): 
    first_number = forms.IntegerField() 
    second_number = forms.IntegerField() 


#views.py 
from django.shortcuts import render 

from [your_app].forms imort AdditionForm 

def calc(request): 
    form = AdditionForm(request.POST or None) 
    answer = None 
    if request.method == 'POST': 
     if form.is_valid(): 
      first_number = form.cleaned_data.get('first_number', 0) 
      second_number = form.cleaned_data.get('second_number', 0) 
      answer = first_number + second_number 
    return render(request, 'some-file.html', {'form' : form, 'answer' : answer}) 


#some-file.html 
<html> 
    <head> 
     <title>Simple Calculator</title> 
    </head> 
    <body> 
     <form action="." method="post" enctype="application/x-www-form-urlencoded"> 
      <fieldset> 
       <ol> 
        {{ form.as_ul }} 
        <li><input type="submit" value="Add the Numbers" /> 
       </ol> 
      </fieldset> 
     </form> 
     {% if answer %} 
     <p>Your answer was: {{ answer }}</p> 
     {% endif %} 
    </body> 
</html>