在我的一个html页面中,我有以下内容:
{% for bet in recent_bets %}
{% if bet.status__name == "Won" or bet.status__name == "Half Won"%}
<div class="container col recent-form_col bg-success" data-toggle="tooltip" data-placement="top" title="{{ bet.date }}, {{ bet.time }}">
{% elif bet.status__name == "Lost" or bet.status__name == "Half Lost"%}
<div class="container col recent-form_col bg-danger" data-toggle="tooltip" data-placement="top" title="{{ bet.status }}">
{% elif bet.status__name == "Void" or bet.status__name == "Cancelled"%}
<div class="container col recent-form_col bg-secondary" data-toggle="tooltip" data-placement="top" title="{{ bet.status }}">
{% elif bet.status__name == "Cash Out" %}
<div class="container col recent-form_col bg-warning" data-toggle="tooltip" data-placement="top" title="{{ bet.status }}">
{% endif %}
根据bet.status__name
是什么,它返回不同的背景色,例如bg-success
。
除了这个案例,我还有其他几个类似的案例。
我想知道你是如何处理这些事情的。只需将其保留在html中,创建一个过滤器/标记来返回适当的html或其他内容?
发布于 2018-06-17 08:10:38
您绝对应该封装关于哪种状态导致哪种CSS类的逻辑。您可以创建一个接受赌注并返回正确的CSS类的过滤器:
<div class="container col recent-form_col bg-{{ bet|get_bet_css_class }}" data-toggle="tooltip" data-placement="top" title="{{ bet.date }}, {{ bet.time }}">
通过这种方式,你也可以在Bootstrap的alert
组件中重用它。
https://stackoverflow.com/questions/50892316
复制相似问题