首页 > 解决方案 > Rails:如果模型属性为真,则在视图中执行以下操作

问题描述

我正在制作一个 RoR 应用程序,我已经以某种方式解决了我的问题,但我认为这不是让它工作的最佳方式。我的ListItems模型上有一个名为ticked的属性,我想在我的视图(html.erb)上写一个标签,说明我的模型的 ticked 属性是true还是false,到目前为止我有这个:

<%= label_tag '', "Finished" if list_item.ticked? %>
<%= label_tag '', "Not finished" if !list_item.ticked? %></p>

list_item是我的模型之一,而list_items.ticked?给出假或真。我想知道我是否可以写这样的东西:

<%= if list_item.ticked? ? 'Finished' : 'Not Finished' %>

先感谢您。

标签: ruby-on-rails

解决方案


在我看来,您可以直接使用三元运算符而不是使用if. 就像是:

<%= label_tag '', list_item.ticked? ? 'Finished' : 'Not Finished' %>

推荐阅读