2011-12-08 95 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>