私はフラスコのウェブサイトプロジェクトを行っていて、それぞれのアイテムの個別アイテムページを作成しようとしています。私はデータベースにsqliteを使用しています。PythonフラスコのWebページ複数のアイテムの単一アイテムページ
以下私のホームページのHTMLコードです:HTMLの
{% extends "base-template.html" %}
{% block content %}
<h1>Valves</h1>
<form action="/product-info" methods=["link", "post"] class="valve-box">
{% for valve in valve_list %}
<li>
<b>Name/Model:</b> {{ valve['item_name'] }}<br> <b>Price:</b> {{ valve['item_price'] }}$
<input type="submit" value="Go to info page"/>
</li>
{% endfor %}
</form>
{% endblock %}
これは、基本的項目の垂直方向のリストです。アイテムに興味があるときは、アイテムの横にあるボタンを押して、自分のフォルダ内のルートファイルから製品情報ページに移動します。以下は
私の製品情報ページのHTMLコードです:
{% extends "base-template.html" %}
{% block content %}
<h1>Information</h1>
<form class="valve-box">
{% for valve in valve_list %}
<li>
<b>Item ID:</b> {{ valve['item_id'] }}<br> <b>Name/Model:</b> {{ valve['item_name'] }}<br> <b>Description:</b> {{ valve['description'] }}<br> <b>Price:</b> {{ valve['item_price'] }}$
</li>
{% endfor %}
</form>
{% endblock %}
問題は、私は唯一のユーザーが興味を持っていたとのプレス品の情報を表示し、対話型製品の情報ページが必要です。どうやってやるの?
もう一つ質問、個々の製品の情報を表示するためには、私はいくつかに持っているどのアイテムのユーザーがHTMLファイル内でクリックされたものは何でもリンク私のルートファイル。これのための私の最初のアイデアは、 "the_item_user_just_clicked_on"のような変数をhtmlファイルに作成し、変数をPythonルートfleにインポートすることでしたが、docsではhtmlで変数を持つことはできません。 – pythonsohard
あなたの新しいルート機能を設定したら、ここで 'show_valve'という名前を付けましたが、名前を'私が答えているHTMLコードは既に 'valve [" item_id "]'を送信しています。したがって、あなたのPythonコードでは、そのIDを使用してバルブリストを検索し、必要なものを見つけることができます( '' item_id "'が各 'valve 'に固有のものであると仮定します)。 – coralvanda
これを試してみましたが、何らかの理由でshow_valve関数呼び出しが正常に機能していません。show_valve関数は正確に1の値をとります。 – pythonsohard