2016-08-12 13 views
-2

私はこれまでにユーザーが入力したものをキーワード引数としてURLに渡そうとしています(本当のエントリではないとしても)。私がキーワード引数として入力名を割り当てようとすると失敗します。Python/Djangoはユーザー入力をキーワード引数として渡しますか?

HTML: 
    <p class="search"> 
      <form method="GET" action="{% url 'job' %}" class="sidebar-form"> 
       <div class="ogsearchbar input-group"> 
        <input class="searchbarz" type="text" name="user_input" id="user_input" placeholder="Enter Job Number" autocomplete="off" /> 
        <span class="input-group-btn"> 
         <button type="submit" name="search" id="search-btn" class="btn btn-flat"><i class="fa fa-search"></i></button> 
        </span> 
       </div> 
      </form> 
     </p> 

ジャンゴ:

def get_job(request): 
    if request.method == 'GET': 
     formvar = request.GET['user_input'] 
    return HttpResponseRedirect('/jobs/' + formvar) 
+0

'' –

答えて

0

ページをリフレッシュするときに私のdjangoコードが要求メソッドで動作していなかったので、私はjavascriptを使うことにしました。

1

何がしたいことは意味がありません。 {{ }}記号は、テンプレートがレンダリングされる前に、サーバーからテンプレートに渡されるコンテキスト変数を示します。しかし、ユーザーがレンダリングしたページ自体に実際に何かを入力したときにのみ定義される値を使用しようとしています。

これはおそらくいくつかのJavascriptで行うことができますが、それほど多くの点はないようです。 URLからパラメータを削除し、フォームをクエリパラメータに送信させます。このパラメータは、ビューでrequest.GETという名前でアクセスできます。

+0

どうすれば構いますか?これはビューで?私はあなたが何を言っているのか理解していて、私の質問を編集しました。 – Zorpho

+0

あなたが何を求めているか分かりません。あなたのフォームはGETを使用するように設定されているため、ビューでそのフォームを使用する必要があります。 –

+0

私のビューのために私のdjangoコードを追加しましたが、動作しません。数字とヒット・サーチを入力すると、ページがリロードされますが、新しく受信したパラメータにはリダイレクトされません。したがって、フォームは "/ jobs /"という名前のURLにあり、ユーザー入力を取得すると、そのページを "jobs/"にリダイレクトしたい – Zorpho

関連する問題