我建立了一个Rails REST服务,并且遇到显示单条记录的问题。这里是我试图打的网址:Rails Rest服务GET
http://website:3000/users/2/timesheets/21
控制器代码:
def show
puts "SHOW"
puts params.inspect
@timesheets = User.find(params[:user_id]).timesheets(params[:id])
respond_to do |format|
format.json { render json: @timesheets }
end
end
我知道PARAMS越来越控制器,但没有使用:timesheet_id
。这里是控制台输出显示我的意思:
Started GET "https://stackoverflow.com/users/2/timesheets/21" for **.**.***.** at 2013-03-19 06:12:11 -0400
Processing by TimesheetsController#show as */*
Parameters: {"user_id"=>"2", "id"=>"21"}
User Load (0.3ms) SELECT "users".* FROM "users" WHERE "users"."id" = ? LIMIT 1 [["id", "2"]]
Timesheet Load (0.5ms) SELECT "timesheets".* FROM "timesheets" WHERE "timesheets"."user_id" = 2
Completed 200 OK in 120ms (Views: 36.5ms | ActiveRecord: 2.9ms)
我在参数散列中看到时间表ID 21。然后进行查询以获取用户,但随后抓取该用户的所有时间表。任何帮助,将不胜感激。谢谢。
这个工作很完美。我可以在一行中完成:'User.find(params [:user_id]).timesheets.find(params [:id])''。谢谢您的帮助。 – jhamm 2013-03-19 14:06:13