2012-07-18 58 views
0

我想在路由級別(config/routes.rb)將campaigns#index重定向到newsletters#index如何在路由級別重定向,而不是在動作級別?

的config/routes.rb中

#match '/campaigns' => redirect('/newsletters')    # something like this 
resources :campaigns do 
    put 'send_preview' 
    put 'send_actual' 
    put 'unschedule' 
end 

以下測試成功,但再次,我希望它成功,由於路線級重定向,沒有動作級重定向。

測試/功能/ campaigns_controller_test.rb

class CampaignsControllerTest < ActionController::TestCase 

test "get index should redirect to newsletters" do 
    get :index 
    assert_redirected_to newsletters_path 
end 

應用程序/控制器/ campaigns_controller.rb

一旦路線級重定向工作,我想擺脫這種行動:

def index 
    redirect_to newsletters_path 
end 
+0

'match'/ campaigns'=> redirect('/ newsletters')'是您如何從routes.rb重定向的方式。你在問什麼? – 2012-07-18 21:01:41

+0

我不確定當時發生了什麼問題,但是,我的評論欄確實有效。 – user664833 2012-08-01 23:28:27

回答

1

您的評論熱線

match '/campaigns' => redirect('/newsletters') 

工作,也

match '/campaigns', to: 'newsletters#index' 

是工作壓力太大。