在Rails视图中创建公式?

时间:2012-06-13 20:12:18

标签: ruby-on-rails ruby-on-rails-3 logic formula

我想在我的视图/主页中创建一个小公式。基本上它应该说当前用户登录(得到那个部分)和用户创建一个REGISTRY = TRUE然后这个 那个。

以下是代码:

 <% if user_signed_in? and?????? %>

 <%= link_to "Show My Registry", current_user.registry %>

 <% else %>

 <%= link_to "Create a new registry", new_registry_path %>

 <% end %>

感谢您的帮助。

3 个答案:

答案 0 :(得分:2)

假设Registry是属于User的模型,您可以使用<% if user_signed_in? && current_user.registry.exists? %>

答案 1 :(得分:0)

我假设您已准备好建立用户和注册管理机构之间的关系。如果是这样,你可以在用户控制器中创建一个类似于。

的方法
def user_registry
  User.current.registry
end

然后,如果你的观点你的if语句应该看起来像

<% if user_signed_in? and user_registry? %>

<%= link_to "Show My Registry", current_user.registry %>

<% else %>

<%= link_to "Create a new registry", new_registry_path %>

<% end %>

答案 2 :(得分:0)

您可能想要嵌套这两个决定。如果用户未登录,会发生什么?您是否仍希望用户无需登录即可创建注册表?其他选择是考虑使用before_filter来确保用户在到达应用中的此决策点之前始终已登录。