Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/67.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 路由将一个控制器匹配到另一个控制器的位置_Ruby On Rails_Routes - Fatal编程技术网

Ruby on rails 路由将一个控制器匹配到另一个控制器的位置

Ruby on rails 路由将一个控制器匹配到另一个控制器的位置,ruby-on-rails,routes,Ruby On Rails,Routes,嗨,我有一个名为“地点”的控制器,它有一些动作,如“查看”、“新建”、“创建” 当用户访问mysite.com/places时,我想执行另一个名为“cores”的控制器的操作“show” 所以我把它放在routes.rb文件中: map.connect '/places', :controller => "cores", :action => "show" 但它不起作用 我收到这个错误: Processing PlacesController#show (for 127.0.0.1

嗨,我有一个名为“地点”的控制器,它有一些动作,如“查看”、“新建”、“创建”

当用户访问mysite.com/places时,我想执行另一个名为“cores”的控制器的操作“show”

所以我把它放在routes.rb文件中:

map.connect '/places', :controller => "cores", :action => "show"
但它不起作用

我收到这个错误:

Processing PlacesController#show (for 127.0.0.1 at 2010-04-16 00:52:07) [GET]

ActionController::UnknownAction (No action responded to show. Actions: admin_denied, admin_required, auto_complete_for_location, auto_complete_for_name, change_location, create, create_facebook_session, create_facebook_session_with_secret, edit, exist, facebook_params, facebook_session, facebook_session_expired, facebook_session_parameters, get_form, is_admin?, new, one_or_true, redirect_to, render_publisher_error, render_publisher_interface, render_publisher_response, set_facebook_session, top_redirect_to, update, wants_interface?, and zero_or_false):
如何将该操作映射到另一个控制器


谢谢

我建议您更具体地了解路线,或者重新考虑控制器命名方案

试试这个:

map.connect 'places', :controller => 'cores', :action => 'show'

/places/:action/:id
匹配的URL仍将继续工作。

URL
/places
与您的
/:id/show
路径不匹配。既然你没有把ID传进来,你希望它是什么?