在Ruby on Rails中,如果您在不同的子目录中有多个控制器,并似乎需要使用redirect_to
,您可以考虑以下方法:
config/routes.rb
文件中,为您的控制器和动作定义命名路由。例如:get '/subdirectory1/controller1/action1', to: 'subdirectory1/controller1#action1', as: 'subdir1_controller1_action1'
get '/subdirectory2/controller2/action2', to: 'subdirectory2/controller2#action2', as: 'subdir2_controller2_action2'
然后,在您的控制器中,您可以使用redirect_to
方法并指定命名路由:
redirect_to subdir1_controller1_action1_path
url_for
方法:url_for
方法可以生成一个特定控制器和动作的URL。例如:redirect_to url_for(controller: 'subdirectory1/controller1', action: 'action1')
polymorphic_path
方法:polymorphic_path
方法可以根据您提供的模型生成URL。例如:redirect_to polymorphic_path(Subdirectory1::Controller1, action: 'action1')
请注意,这些方法不依赖于任何特定的云计算品牌商,而是使用Ruby on Rails框架的内置功能。
领取专属 10元无门槛券
手把手带您无忧上云