Rails 检查条件的助手
Rails helper that to check conditional
我想知道检查视图的条件是否是 helper 的正确使用。
让我们看一个人为的例子:
助手
def free_to_subscribe(product)
current_user.active_member? && product.on_discount?
end
查看
...
<% elsif free_to_subscribe(product) %>
Free to subscribe!
<% end %>
...
我认为助手需要 return 在视图中显示一些内容。 return 布尔值的助手看起来有点异味。有什么想法吗?
我个人会把它放在模型中:
class User < ActiveRecord::Base
def free_to_subscribe?(product)
active_member? && product.on_discount?
end
end
那么视图将如下所示:
...
<% elsif current_user.free_to_subscribe(product) %>
Free to subscribe!
<% end %>
...
视图中的代码稍微多一些,但在我看来,这就像您在没有真正原因的情况下任意选择在助手中加入某些逻辑。
我想知道检查视图的条件是否是 helper 的正确使用。
让我们看一个人为的例子:
助手
def free_to_subscribe(product)
current_user.active_member? && product.on_discount?
end
查看
...
<% elsif free_to_subscribe(product) %>
Free to subscribe!
<% end %>
...
我认为助手需要 return 在视图中显示一些内容。 return 布尔值的助手看起来有点异味。有什么想法吗?
我个人会把它放在模型中:
class User < ActiveRecord::Base
def free_to_subscribe?(product)
active_member? && product.on_discount?
end
end
那么视图将如下所示:
...
<% elsif current_user.free_to_subscribe(product) %>
Free to subscribe!
<% end %>
...
视图中的代码稍微多一些,但在我看来,这就像您在没有真正原因的情况下任意选择在助手中加入某些逻辑。