使用Django将值从html输入传递到python脚本

时间:2015-12-31 03:31:21

标签: python django

所以我基本上想弄清楚的是如何将表单中的值传递给Django的python脚本。

这是我的表单代码,我想将stateLand的值传递给python脚本。

<form action= '*******' method="POST">
{% csrf_token %}
    Land: <input type="text" name="stateLand" />
    </br>
    <input type="submit" value="Submit" />
</form>

以下是我的观点。

def ar(request):
    if request.method == 'POST':
        from raids import state
        x = state("","")
        return render(request, 'ar.html', {'state':x.main('24000')})
    else:
        return render(request, 'ar.html')

现在我只有24000硬编码到脚本中。我已经尝试了许多方法来实现这一点,但似乎没有任何帮助。你有什么建议让这个工作吗? python脚本对输入的数字运行一些计算。

我尝试过不同的事情,比如

request.POST.get('stateLand')

stateLand  = form.getvalue("stateLand")

import cgi
form = cgi.FieldStorage()
stateLand = form["stateLand"]

2 个答案:

答案 0 :(得分:0)

你很亲密。您需要使用requests.get访问帖子参数:

def ar(request):
    if request.method == 'POST':
        state = request.POST['stateLand']
        return render(request, 'ar.html', {'state':state}) # this just returns whatever was posted as stateland right now
    else:
        return render(request, 'ar.html')

答案 1 :(得分:0)

您也可以使用某种方法创建课堂视图:

class MyClass(View):
    def post(self, request):
        data=request.POST

        #will be better to use django forms
        #form = self.MyClassForm(data=data)
        #if form.is_valid():

        stateLand  = data.get("stateLand", None)