Ruby on Rails 3,传递参数?

时间:2011-08-04 19:45:44

标签: ruby ruby-on-rails-3 sqlite hash

我目前正在尝试在Ruby on Rails应用程序中获取用户所做的所有事件。

Rails版本= 3.0.9 Ruby版本= 1.9.2

User has_many :events
Event belongs_to :user

admin_controller.rb :(用于显示应用的管理部分)

class AdminController < ApplicationController

  load_and_authorize_resource

  def index
    @topuploaders = User.find(:all, :include => :events).sort_by { |u| -u.events.count }.first(5)
    @topflyers = Event.all(:limit =>10, :order => 'viewcount DESC')
  end

  def users
    @users = User.all
  end

  def flyers
    @events = Event.all
  end

  def get_flyers
    @user = User.find(params[:id])
  end

end

用户功能按名称查找并显示所有用户。 我坚持如何建立一个链接到一个页面,该页面将显示用户创建的所有事件。

我尝试使用:

def get_flyers
        @user = User.find(params[:id])
end

然后在视图中显示传单的名称,但这不起作用。

任何建议都将不胜感激。 我很新闻,所以我不确定我是否给出了足够的细节,所以请耐心等待。

提前谢谢你。

1 个答案:

答案 0 :(得分:2)

只需将get_flyers功能修改为

即可

@flyers=User.find(params[:id]).events

然后,@flyers将包含该用户的一系列事件,您可以在视图中显示这些事件。