我正在阅读 Michael Hartl 的书“Ruby on Rails Tutorial Learn Web Development with Rails”。在他解释如何获得删除用户的管理权限的部分中,我似乎无法让它工作。删除链接不会显示在网络应用程序上,我对为什么会发生这种情况感到困惑。这是我下面的未分解代码,它位于以下目录中:app/views/users/index.html.erb
<% provide(:title, 'All users') %>
<h1>All users</h1>
<%= will_paginate %>
<ul class="users">
<% @users.each do |user| %>
<li>
<%= gravatar_for user, size: 52 %>
<%= link_to user.name, user %>
<% if current_user.admin? && !current_user?(user) %>
| <%= link_to "delete", user, method: :delete,
data: { confirm: "Are you sure?" } %>
<% end %>
</li>
<% end %>
</ul>
<%= will_paginate %>
的current_user.admin? && !current_user?(user)
方法位于:app/helpers/sessions_helper.rb
def current_user
remember_token = User.encrypt(cookies[:remember_token])
@current_user ||= User.find_by(remember_token: remember_token)
end
def current_user?(user)
user = current_user
end
我已经被这个问题困扰了很长一段时间,并尝试了许多不同的方法来解决这个问题,但都没有奏效。我正在使用 Rubymine IDE 在 Windows 7 上运行 Rails。本教程是在 Mac OS X 操作系统上完成的,我认为问题可能与我的设置有关。
在运行 RSpec 与在 Mac OS X 上运行它时,使用 Windows cmd 进行测试失败是否存在已知问题?
任何帮助将非常感激。
谢谢你。