如何在 html 中放置 if 以使 'object.star' 的值同时等于 1 和 2

Posted

技术标签:

【中文标题】如何在 html 中放置 if 以使 \'object.star\' 的值同时等于 1 和 2【英文标题】:How can I put an if in html so that the value of 'object.star' is equal to 1 and 2 at the same time如何在 html 中放置 if 以使 'object.star' 的值同时等于 1 和 2 【发布时间】:2021-11-06 00:38:13 【问题描述】:

我尝试了这种方法(在两个值之间使用'and,or')但是'and'只应用第一个值('four') 只有这样我才能通过为两者设置两个单独的“ifs”来解决问题,这不是正确的方法

这是我的代码:

                % for object in object_list %
                    **% if object.star == "four" or "five" %**
                    <div class="col mb-5">
                        <div class="card h-100">
                            <!-- Product image-->
                            <img class="card-img-top">object.thumbnail_tag
                            <!-- Product details-->
                            <div class="card-body p-4">
                                <div class="text-center">
                                    <!-- Product name-->
                                    <a href="% url 'detail' object.slug %"><h5 class="fw-bolder">object.name</h5></a>
                                    <!-- Product reviews-->
                                    <div class="d-flex justify-content-center small text-warning mb-2">
                                    % if object.star == "four" %
                                        <div class="bi-star-fill"></div>
                                        <div class="bi-star-fill"></div>
                                        <div class="bi-star-fill"></div>
                                        <div class="bi-star-fill"></div>
                                    % elif object.star == "five" %
                                        <div class="bi-star-fill"></div>
                                        <div class="bi-star-fill"></div>
                                        <div class="bi-star-fill"></div>
                                        <div class="bi-star-fill"></div>
                                        <div class="bi-star-fill"></div>
                                    % endif %
                                    </div>
                                    <!-- Product price-->
                                    % if object.newprice == none %
                                    object.currencyobject.price
                                    % else %
                                    <span class="text-muted text-decoration-line-through">object.currencyobject.price</span>
                                    <span style="color: #ffc107;">object.newprice</span>
                                    % endif %
                                </div>
                            </div>
                            <!-- Product actions-->
                            <div class="card-footer p-4 pt-0 border-top-0 bg-transparent">
                                <div class="text-center"><a class="btn btn-outline-dark mt-auto" href="#">Add to cart</a></div>
                            </div>
                        </div>
                    </div>
                    % endif %
                % endfor %

【问题讨论】:

欢迎来到 SO。请查看您的帖子并问自己这是否是您可以提出问题的最佳版本。谢谢 他们甚至没有看到我是新贡献者 我不明白你的意思。 “他们”是谁? @Neuron 我的第一条评论已被删除。我说是的,这是最好的版本,所以非常有帮助,但有些人给我负分,这会影响我的帐户,(他们甚至不看到我是新的贡献者) @Saleh,我认为 Neuron 的意思是我们应该尽可能地简化我们的问题——这通常可以帮助我们自己找到答案。在这种情况下,您的问题可能已经缩小到“如何在 Django 模板中编写逻辑 IF OR 语句?”带有您尝试过的简单代码示例。有关更多信息,您可以查看How to ask 【参考方案1】:

object.star == 'four' or 'five' 没有按照你的想法做。

它将首先考虑object.star == 'four',即TrueFalse。如果False 会考虑five(这是真的)。​​

您需要明确地进行 2 次测试:

object.star == 'four' or 'object.star == 'five'

【讨论】:

以上是关于如何在 html 中放置 if 以使 'object.star' 的值同时等于 1 和 2的主要内容,如果未能解决你的问题,请参考以下文章

如何在 AngularJS 2 中放置已选择的选项?

如何在翡翠中放置一个有条件的html标签?

如何在特定标题下的 rmarkdown html 中放置脚注?

如何在 Angular 的 index.html 中放置组件/模板占位符?

如何在场景中放置场景 - Sprite Kit

如何在整个页面中放置表格