[解決済み] django のテンプレートで "none" に相当するものは何ですか?
2022-08-13 23:17:46
質問
Django テンプレート内でフィールド/変数がないかどうかを確認したいです。そのための正しい構文は何ですか?
これは私が現在持っているものです。
{% if profile.user.first_name is null %}
<p> -- </p>
{% elif %}
{{ profile.user.first_name }} {{ profile.user.last_name }}
{% endif%}
上記の例で、"null" を置き換えるには何を使用すればよいのでしょうか?
どのように解決するのですか?
None, False and True
は、すべてテンプレートタグとフィルタの中で利用できます。
None, False
の場合、空文字列 (
'', "", """"""
) と空のリスト/タプルはすべて
False
で評価される場合
if
で評価されるため、簡単に
{% if profile.user.first_name == None %}
{% if not profile.user.first_name %}
ヒントです。ロジックはモデルに任せ、テンプレートはプレゼンテーション層のみに限定し、モデルで計算するようにしましょう。例を挙げます。
# someapp/models.py
class UserProfile(models.Model):
user = models.OneToOneField('auth.User')
# other fields
def get_full_name(self):
if not self.user.first_name:
return
return ' '.join([self.user.first_name, self.user.last_name])
# template
{{ user.get_profile.get_full_name }}
これが役に立つといいのですが :)
関連
-
[解決済み】Djangoのクエリセットフィルタリングでnot equalを行うにはどうすればよいですか?
-
[解決済み] PandasでDataFrameの行を反復処理する方法
-
[解決済み] 最小限の驚き」と「変更可能なデフォルトの引数
-
[解決済み] Python 3で「1000000000000000 in range(1000000000000001)」はなぜ速いのですか?
-
[解決済み] Pythonで改行(行継続)をするにはどうしたらいいですか?
-
[解決済み】if __name__ == "__main__": は何をするのでしょうか?
-
[解決済み】__str__と__repr__の違いは何ですか?
-
[解決済み】2つの辞書を1つの式でマージする(辞書の和をとる)には?)
-
[解決済み] 辞書のキーと値を交換するにはどうすればよいですか?
-
[解決済み] Python Empty Generator 関数
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] Pythonの要素別タプル演算(sumなど
-
[解決済み] Python 3でバイナリデータを標準出力に書き込むには?
-
[解決済み] Python 2.7サポート終了?
-
[解決済み] データフレームをソートした後にインデックスを更新する
-
[解決済み] 文字列のリストを内容に基づいてフィルタリングする
-
[解決済み] Ctrl-CでPythonスクリプトを終了できない
-
[解決済み] Pythonでマルチプロセッシングキューを使うには?
-
[解決済み] Django で全てのリクエストヘッダを取得するにはどうすれば良いですか?
-
[解決済み] PySparkでデータフレームのカラムをString型からDouble型に変更する方法は?
-
[解決済み] djangoのQueryDictをPythonのDictに変更するには?