我有小组,他们有成员(链接)。
我的群组展示页面主要用于列出会员。
这在rails 3中运行良好
我升级到rails 4,其他一切正常但@members
列表没有显示,我没有看到任何错误。这是一个常规的erb
页面(我也是单独的,有一个页面,内容是通过ajax加载的,应该列出成员,这也是坏的,但我现在专注于erb页面。)
日志显示
Started GET "/groups/49" for 127.0.0.1 at 2014-08-18 20:34:25 -0400
Processing by GroupsController#show as HTML
Parameters: {"id"=>"49"}
Group Load (0.4ms) SELECT `groups`.* FROM `groups` WHERE `groups`.`id` = 49 ORDER BY group_name
LIMIT 1
(0.5ms) SELECT COUNT(*) FROM `links` WHERE ('group_id')
CACHE (0.0ms) SELECT COUNT(*) FROM `links` WHERE ('group_id')
CACHE (0.0ms) SELECT COUNT(*) FROM `links` WHERE ('group_id')
Rendered groups/show.html.haml within layouts/application (5.5ms)
链接为:link_to 'Members', group
路线是:
resources :groups do
resources :links # Enables group/:id/link/new
collection do
post 'order_links'
end
end
组控制器具有以下显示:
def show
@group = Group.find(params[:id])
@members = Link.where(:group_id, params[:id]).order(:position)
respond_to do |format|
format.html # show.html.erb
format.xml { render xml: @group }
format.json { render json: @members }
end
end
,页面有:
%ul#sortable
- @members.each do |loop|
= content_tag_for :li, loop do
- construct_hyperlink(loop.url_address, loop.alt_text)
= sanitize @address_url
\- #{h @new_link_alt_text} #{link_to 'details', link_path(loop), {"title" => loop.alt_text}} #{link_to 'edit', edit_link_path(loop), {"title" => loop.alt_text}}
这有点难以阅读授予你,但请放心,它已经在rails 3中使用了多年这个应用程序:)
问题可能是从相关模型中获取信息?
答案 0 :(得分:1)
您的where
条款中有拼写错误。这样:
Link.where(:group_id, params[:id]).order(:position)
应该成为:
Link.where(group_id: params[:id]).order(:position)