如何在django服务器上触发特定表单输入的python脚本?

时间:2013-11-07 19:15:35

标签: python django python-2.7

我想在我的网站上设一个搜索框。我希望特定搜索框输入的输出由特定文件生成,该文件在服务器上映射给定输出。

代表: - fib 10

将运行fib.py并给出响应将是fib.py

的结果

2 个答案:

答案 0 :(得分:0)

你为什么要那样做?只需导入您的文件/模块并使用它,这是正确的方法。

假设您在fib.py中有此代码:

def calculate(.....):
    #code. ...
    return result

现在在你的其他文件中,让我们说views.py只做:

import fib

# this is the search view
def search(request):

    if request.method == "POST":
       # other code
       fib.calculate(param) # where param is the value of the search field

我不确定我是否理解正确...但是没有理由使用subprocess并执行文件并获取返回的值...

答案 1 :(得分:-1)

您可以使用subprocess模块运行命令并获取输出。

更新1

示例视图:

import subprocess

def runCmd(request):

    cmd = request.POST.get('cmd')
    param = request.POST.get('param')

    codeDir = '/path/to/py/file/'
    absoluteCodePath = codeDir + cmd + '.py'

    result = subprocess.check_output([absoluteCodePath, param])

    return result