【发布时间】:2012-08-27 04:04:32
【问题描述】:
我希望您可以通过问答应用程序回答的问题。 Rails 还是很新的。它应该相当简单,但是每当我尝试创建链接列表以显示该点到循环中的 RESTful 路由时,都会遇到一个小问题。
这是控制器的代码:
users_controller.rb
def list
@user = User.find(params[:id])
@users = User.find(:all, :select => :name)
end
def quiz
@user = User.find(params[:id])
@users = User.find(:all, :select => :name)
end
这是视图的代码:
<% if current_user.admin? %>
<ul>
<%- @users.each do |link| %>
<li><%= link_to link.name, quiz_user_path(@user, @quiz) %></li>
<% end %>
</ul>
<% end %>
这是路线的代码:
resources :users do
get 'quiz', :on => :member
end
我想做的是根据用户的名称生成单独的链接,然后链接到该特定用户的测验页面。在我看来,我很确定需要为代码更改某些内容。现在,我得到的只是一个指向当前用户的链接,在这种情况下是用户 4。(http://localhost:3000/users/4/quiz)
感谢您提供解决此问题的任何快速提示。
【问题讨论】:
-
按照以下建议解决了这个问题,并对控制器进行了一点改动。将“@users = User.find(:all, :select => :name)”更改为“@users = User.find(:all)”。取出 :select => :name。瞧!再次感谢。
标签: ruby-on-rails ruby ruby-on-rails-3