【问题标题】:Django Using conditional in template based on foreginKey value?Django在基于foreginKey值的模板中使用条件?
【发布时间】:2021-07-22 17:57:43
【问题描述】:

我想知道您是否可以使用条件来更改基于外键的模板显示的内容。在我的项目中,用户将选择他们想要锻炼的肌肉群(胸部、背部、腿部等),这意味着每次锻炼都有一个大肌肉群的前键。

我想这样做,如果用户选择的锻炼具有腿部的外键,则模板将是唯一的,而不是锻炼是胸部锻炼。

有什么办法吗?

【问题讨论】:

  • 你不能只创建不同的模板,然后在点击时呈现正确的模板吗?
  • 嗯,除了一个小的 div 部分之外,它比一切都相同。对于热身,我不想指定所有这些组/代表,但对于其他所有我想要的信息。
  • 您可以这样做,但很有可能它会使您的模板更大、更笨重且更难阅读。如果真的是一小部分,是的,有办法。

标签: python django django-templates foreign-keys


【解决方案1】:

您可以在 HTML 中使用{% if muscle_part == [ENTER_STRING_TO_VERIFY_WITH] %},并在渲染视图时在上下文中传递肌肉部分字符串。这样,您的所有程序都将在一个模板中,但会根据您的上下文进行相应显示。

【讨论】:

  • 如果 foreignKey 在我的 Workout 模型中,我需要直接通过它作为上下文,还是通过锻炼本身就足够了?
  • 你可能想要非常具体,或者你可以代替 ifmuscle_part == 到某个字符串,你可以测试一下muscle_part_leg 是否存在,这将帮助你避免硬编码到你的模板中跨度>
  • 刚刚得到它,实际上是在字符串周围使用单引号,所以它从未注册过。双引号解决了这个问题。感谢大家的帮助!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2018-08-21
  • 1970-01-01
  • 1970-01-01
  • 2021-01-01
  • 1970-01-01
  • 2019-10-19
  • 2020-10-10
相关资源
最近更新 更多