質問

routes.rbファイルにルートがあります:

map.connect 'login', :controller => 'users', :action => 'login'

そして、ビューに部分的にレンダリングされるものがあります:

login_path

このビューは、コントローラーの機能テストで呼び出されます。

ただし、機能テストではエラーが発生します:

ActionView::TemplateError: undefined local variable or method `login_path' for #<ActionView::Base:0x4762c90>

1)テストのためにそれをm笑する最良の方法は何ですか?

2)これは設計上の欠陥を示していますか?

役に立ちましたか?

解決

map.connect は、名前のないルートを追加します。 routes.rb におそらく必要なものは次のとおりです。

map.login 'login', :controller => 'users', :action => 'login'

これにより、名前付きルート login_path および login_url が自動的に作成されます。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top