从python Appengine中的Javascript函数中检索变量

时间:2013-10-12 10:01:15

标签: javascript python django google-app-engine

我对这个问题涉及的所有网络技术都很陌生,所以请耐心等待:) 我目前正在忙着我的第一个appengine项目。我想要做的是使用python代码操纵JS函数(在我的.html文件中)生成的值。我的问题是,我不知道如何“捡起来”

function createSomething(some, thing) {
    var something = some + thing; //I need to retrieve that "something" value 
}

为了详细说明,我能够检索通过HTML表单输入的内容:

<textarea name="content" rows="3" cols="60"></textarea>
<input type="submit" value="Submit Something">

使用如下所示的python代码:

entry.content = self.request.get('content')

但是如何使用在某些JS函数中生成的值来做类似的事情呢? (我在appengine上使用python + django + html + js,只是尝试基础知识)

1 个答案:

答案 0 :(得分:2)

您必须根据需要通过GET或POST请求将something的值发送到服务器端。如果您尝试在不重新加载页面的情况下执行此操作,则需要使用Ajax请求。除非将客户端值发送到服务器,否则服务器端的Python代码无法访问客户端值。类似于:

# your-javascript-file.js or a script block on your page

function createSomething(some, thing) {
    if (some !== undefined && thing !== undefined) {
        $.POST('/a-django-url-pattern/', {'something': some + thing},
            function(responseData) {
            // do something else with the responseData, etc
        });
    }
}

# your Django view
def your_view_function(request):
    if request.method == 'POST':
        something = request.POST.get('something')
        if something:
            # do whatever

    return render(request, 'a-template.html')