現在試している方法
DjangoのテンプレートのURLタグの引数に{{ 変数 }}を指定し、動的にそのモデルオブジェクトのIDを引き継いだ内容確認ページへリンクさせたいが上手くいかない。
html
1{% url 'app:farm_product_change' {{ form.product.pk.value }} %}
そもそも実現したいこと
一覧画面→編集個別画面→編集確認画面へと指定したモデルオブジェクトの情報を引き継ぎ、編集完了まで持っていきたい。
編集確認画面へ進む際に一覧画面での選択時に取得したモデルのpkを引き継げなくて困っており、現状上記のようにformの内容からそのpkの情報を取得しようと試みております。
発生している問題・エラーメッセージ
TemplateSyntaxError Could not parse the remainder: '{{' from '{{'
該当のソースコード
html
1<p >内容をご確認の上、「確認画面へ進む」を押してください。</p> 2<form action="{% url 'app:farm_product_change' {{ form.product.pk.value }} %}" accept-charset="UTF-8" method="POST"> 3{% csrf_token %} 4<div class="product-name select-content"> 5<h3 class="sell-name">商品名</h3> 6{{ form.product_name }} 7{{ form.product_name.errors }} 8</div> 9<div class="sell-submit-content"> 10<button type="submit" class="sell-submit" name="next" value="confirm">確認画面へ進む</button> 11</div> 12</form>
この個別編集ページへは、UpdateViewを使ってきているので、テンプレート{{ form.xxx }}の入力値は表示されている状態です。
前提
html
1{% for product in farm_products %} 2<div> 3<a href="{% url 'app:farm_product_change' product.pk %}"> 4<div> 5<input type="checkbox" name="farm_products" value="{{ product.pk }}" /> 6{{ product.product_name }} 7</div> 8</a>
一覧画面は、関数ベースビューで該当のモデル一覧とテンプレートを渡し作成し、上記のようにその一覧画面のテンプレートの中でfor文を回し、編集したい一意のモデルを指定し、「該当のソースコード」の確認画面まで来ています。
「前提」の一覧画面で指定した一意のモデルを確認画面まで引き継いで表示できれば基本的には手段は問わないのですが、確認画面を挟むと、当初指定したモデルのpkをうまい具合にURLタグに引き継ぐ方法が見つからず、苦しんでいます。
補足情報(FW/ツールのバージョンなど)
python3.7
Django==2.2.4
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。