2016-08-17 8 views
-2

私は、テキストを処理するpythonスクリプトを持っています。 私はdjangoでWebページを作成してから、djangoでPythonスクリプトを呼び出して実行します。は、djangoのWebページでPythonスクリプトを実行します

ここに私の場合の例:

Webページ内の入力テキストは、我々はボタンでクリックすると、スクリプトは入力テキスト、プロセスそれを取ると、Webページで結果を返す、があります。

このタスクはどのように実行できますか?

+3

これは完全に正常なDjangoワークフローのようです。あなたは何を試していますか、どこに問題がありますか? –

答えて

5
  1. このように、テキスト入力でフォームを作成します。

    <form action="{% url "hello" %}" method="post"> 
        {% csrf_token %} 
        <input name="hiya"> 
        <input type="submit"> 
    </form> 
    
  2. ルートurls.pyhello URL:

    from . import views 
    
    urlpatterns = [ 
        # ... 
        url(r'^blabla$', views.whatever, name='hello'), 
    ] 
    
  3. をごviews.pyファイルでは、必要なビューを作成します:

    def whatever(request): 
        if request.method == 'POST': 
         import subprocess 
         output = subprocess.check_output(["script.py", "--", request.POST['hiya']) 
         return HttpResponse(output, content_type='text/plain') 
    

あなたはおそらくこれをしたくないでしょう。新しいプロセス全体を作成するライブラリ関数を呼び出すほうがはるかに効率的ですが、一般的には非常に簡単です。 Djangoには、簡単な形式よりも簡単なものを作ることができないような細かい点があります.Djangoのチュートリアルを読んで理解することをお勧めします。

+0

似たような質問:http://stackoverflow.com/questions/29977495/running-python-script-in-django-from-submit –

+0

よくある質問の正解です。私は、間違ったやり方をする前にドキュメンテーションを読んで、最も重要なアドバイスを期待しています。 – spectras

関連する問題