0

ルートレベル()でリダイレクトcampaigns#indexしたいのですが。newsletters#indexconfig/routes.rb

config / routers.rb

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

次のテストは成功しますが、アクションレベルのリダイレクトではなく、ルートレベルのリダイレクトが原因で成功するようにします。

test /functional /campaigns_controller_test.rb

class CampaignsControllerTest < ActionController::TestCase

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

app / controllers / campaigns_controller.rb

ルートレベルのリダイレクトが機能したら、このアクションを削除したいと思います。

def index
  redirect_to newsletters_path
end
4

1 に答える 1

1

あなたのコメント行

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

働いている、そしてまた

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

も働いています。

于 2012-07-18T20:57:08.300 に答える