私はRailsのチュートリアルに従っており、いくつかのテストを追加するいくつかのページがあります。_pathを使用すると "No route matches .."エラーが発生する
私はhelp_pathの代わりに使用しようとしています:私のpages_controller_testのヘルプ:
test "should get help" do
get help_path
assert_response :success
assert_select "title", "Help | #{@base_title}"
end
を私はroutes.rbをファイルに次の行を追加:
get '/help', to: 'pages#help'
しかし、私はこのエラーを取得する:
1) Error: PagesControllerTest#test_should_get_help: ActionController::UrlGenerationError: No route matches {:action=>"/help", :controller=>"pages"} test/controllers/pages_controller_test.rb:62:in `block in '
私はいくつかのソリューションを試しましたが、いずれも私の問題を解決しませんでした。 私はまた、代わりにこのラインを使用して試してみた:
match '/home' => 'main_pages#home', :as => :home
をしかし、それはどちらか動作しませんでした。
マイレールのバージョンは次のとおりです。4.2.4 私のRubyのバージョンです:$レーキルートのルビー2.1.9p490(2016年3月30日リビジョン54437)[x86_64の-のlinux-gnuの]
出力:
Prefix Verb URI Pattern Controller#Action
root GET/ pages#home
help GET /help(.:format) pages#help
courses GET /courses(.:format) pages#courses
programs GET /programs(.:format) pages#programs
schools GET /schools(.:format) pages#schools
dashboard GET /dashboard(.:format) pages#dashboard
profile GET /profile(.:format) pages#profile
account GET /account(.:format) pages#account
signout GET /signout(.:format) pages#signout
EDIT: 私のHTMLコードでhelp_path ..などを使用することはできますが、テストではエラーが発生します。 ありがとうございました:)
あなたのルートの定義(使用 ' 'help''と'' の代わりhome'')にスラッシュを含めないでください。また、 'rake routes'を実行してすべてのルートを表示します。 – mmichael
コントローラとあなたの 'routes.rb'全体を追加できますか? –
@SebastiánPalma私のapplication_controllerはhello関数しか持っていません –