0

我有以下代码application.html.erb

...
<body>
  <div class="container">
    <%= render 'layouts/header' %>
      <section class="<%= "login_section" if login_or_signup? %>"> #here's the issue
        <% flash.each do |key, value| %>
          <div class="flash <%= key %>"><%= value %></div>
        <% end %>
        <%= yield %>
      </section>
    <%= render 'layouts/footer' %>
  </div>
</body>
...

login_section是一个css类,它以不同的方式格式化标题,我希望仅在当前路径是/login或时才设置它/signup- 所以login_or_signup?帮助器定义如下:

def login_or_signup?
  request.path == login_path || signup_path
end

我也尝试过将其作为login_path or signup_path,的胆量(login_path || signup_path)(login_path or signup_path)但它们都不会true正确评估(“正确”是当路径是or /login/signup)。我试过把它写成

def login_or_signup?
  request.path == login_path
end

并且按预期工作。

4

1 回答 1

5

怎么样

def login_or_signup?
  current_page?(:login) || current_page?(:signup)
end

API 文档

于 2013-09-11T13:37:10.940 回答