変数に基づいてPythonとJSONのループに問題があります。私がしようとしているのは、渡された1つの変数に基づいてJSONデータの1行だけを出力することです。Pythonとフラスコ、変数に基づいてデータをループして印刷する
相続人のpythonファイルのコード:
@app.route('/<artist_name>/')
def artist(artist_name):
list = [
{'artist_name': 'Nirvana', 'album_name': 'Nevermind', 'date_of_release': '1993', 'img': 'https://upload.wikimedia.org/wikipedia/en/b/b7/NirvanaNevermindalbumcover.jpg'},
{'artist_name': 'Eminem', 'album_name': 'Marshal Mathers LP', 'date_of_release': '2000', 'img': 'http://e.snmc.io/lk/f/l/6b09725acea3aefbafbf503a76885d0c/1612455.jpg'},
{'artist_name': 'System of a Down', 'album_name': 'Toxicity', 'date_of_release': '2001', 'img': 'http://loudwire.com/files/2015/09/System-of-a-Down-Toxicity.png'},
{'artist_name': 'Korn', 'album_name': 'Life is Peachy', 'date_of_release': '1996', 'img': 'http://loudwire.com/files/2014/01/Life-is-Peachy.jpg'}
]
return render_template("artist.html", results=list, artist_name=artist_name)
そして、これは私のartist.htmlテンプレートです:
{% if results %}
<ul>
{% for item in results if item.artist_name == item.artist_name %}
<li>{{ item.artist_name }}</li>
<li>{{ item.date_of_release}}</li>
{% endfor %}
</ul>
{% endif %}
「ARTIST_NAME」変数があるときは、されていることは何イム達成しようとして
"artist_name"変数と "date_of_release"変数を出力することができますが、代わりに "artist_name"という変数に基づいて4つのレコードすべてを印刷します。誰も私にこれを助けることができますか?ありがとうございました。
これはおそらく 'item.artist_name == item.artist_name'ですか? – hjpotter92
item.artist_name ==結果など、さまざまなバリエーションを試しましたが、正しく実行する方法がわかりません。 – Animalovsky
試してくださいitem.artist_name == artist_name –