0

我对 Ruby on Rails 还是很陌生。我只对设计和 rails/ruby 方法有点熟悉。

我有一个登录页面。我有一个检查用户是否登录的页面;如果是,则显示一个部分,如果不是,则显示另一个部分;

<%= render(user_signed_in? ? '/layouts/signed_in_header' : '/layouts/signed_out_header') %>

现在,只有一个 html.erb 例外,我怎样才能拥有上述内容?有没有类似 Is_not 方法的东西?

如果用户已登录并且他所在的页面是 not_here_please,我不希望显示 signed_in_header。如果用户已登录,它应该显示在每隔一个页面上。

有没有类似的东西:

<%= render(user_signed_in? ? and page_is_not 'not_here_please'
'/layouts/signed_in_header' : '/layouts/signed_out_header') %>

谢谢你的帮助,

克里斯。

4

1 回答 1

1

正如马克西莫夫所说:

<%= render((user_signed_in? && controller.action_name != 'not_here_please') ? '/layouts/signed_in_header' : '/layouts/signed_out_header') %>

随意使用与controller.action_name您的情况不同的任何东西。我只是认为这是代表您所要求的最合适的方式。

于 2013-02-01T22:49:11.937 回答