2016-05-20 8 views
1

私はこのようなHTMLフォームを持っている:ジャンゴ - HTMLフォームは、(request.POST.get(...)が空である)を提出しない

<form action="/submit_prform/" method="POST" class="prform" id="prform" name="prform"> 
{% csrf_token %} 
    <div class="node" name="node_1" id="node_1"> 
     <input type="hidden" value="1" class="node_index" name="node_index"> 
     <label for="node_name_1">Node 1:</label> 
     <input type="text" class="node_name" name="node_name" id="node_name_1"> 
     <input type="hidden" value="1" class="target_count"> 
     <div class="node_targets" name="node_targets"> 
      <div class="target" name="target_1_1"> 
       <label class="target_class_label" for="target_name">Target 1:</label> 
       <input type="text" class="target_name"> 
       <label for="value">Value</label> 
       <input type="text" class="value"> 
      </div> 
     </div> 
     <button type="button" class="add_target">Add target</button> 
    </div> 
    <input type="submit" value="Submit form"> 
</form> 

ボタンはJavascriptを使用して複数のターゲットフィールドを追加することです。

私urls.pyは次のようになります。

urlpatterns = [ 
    url(r'^submit_prform/',pagerank_django.views.submit_prform), 
    url(r'^admin/', admin.site.urls), 
    url(r'^', include("pagerank_django.urls")), 
] 

そして、私のviews.pyは、次のようになります。

def submit_prform(request): 
    if request.method == "POST": 
     form = request.POST.get("prform") 
     print(request, form) 
     return render(request, "pagerank_django/index.html", {}) 

def index(request): 
    return render(request, "pagerank_django/index.html", {}) 

私は私が私のビュー機能に提出するフォームを取得することができません、それ次のように表示されます。

[20/May/2016 11:29:36] "GET/HTTP/1.1" 200 3593 
[20/May/2016 11:29:36] "GET /static/pagerank_django/pagerank.css HTTP/1.1" 304 0 
<WSGIRequest: POST '/submit_prform/'> None 
[20/May/2016 11:29:37] "POST /submit_prform/ HTTP/1.1" 200 3593 

私はviews.pyで送信するフォームにアクセスするにはどうすればよいですか?

はあなたのフォームでprformというフィールドを持っていないので、これは空です

答えて

0
form = request.POST.get("prform") 

をお読みいただき、ありがとうございました!

あなたはdjangoを使用しているので、なぜDjangoの能力を有効にしないのですか?

Django formsを使用してください。

あなたはコンテンツを 何もなく、公開しないでください、とあなたがフォームを理解して使用する必要があるとしている、あなたの 訪問者からの入力を受け付けないウェブサイトやアプリケーションを構築することを計画している場合を除き。

Djangoはフォーム を作成してサイト訪問者からの入力を受け入れ、入力を処理して に応答するのに役立つさまざまなツールとライブラリを提供しています。

関連する問題