3

Rails 3.2、RailsAdmin 0.0.3、Rspec、および Capybara を使用しています。

RailsAdmin wiki で説明されているように、仕様ファイルから RailsAdmin url ヘルパーを呼び出そうとします。rails_admin.new_path(:model_name => :user)

コントローラーまたはビューからそのようにヘルパーを使用すると、うまく機能しますが、仕様ファイルから使用しようとすると、次のエラーが発生します。

#RSpec::Core::ExampleGroup::Nested_2:0xbe04948 の未定義のローカル変数またはメソッド `rails_admin'>

rails_admin をロードするには、spec_helper.rb ファイルに何かを追加する必要があると思います。しかし、しばらくグーグルで rails_admin gem の spec_helper を調べた後、何が原因かわかりません...

どんな助けも高く評価されます!

4

2 に答える 2

7

rails_adminのspec_helper.rbで見つけました。

次のコードをspec_helper.rbに含めます。

RSpec.configure do |config|
  ...
  config.include RailsAdmin::Engine.routes.url_helpers
end

デバッガーを使用してテストしました。それは呼び出すことができます

> new_path(:model_name => :user)
=> "/admin/user/new"
于 2012-06-01T14:38:53.747 に答える
0

rails_admin url を必要とする個々の仕様にこの行を追加し、以前の投稿で言及されたメソッドを参照できるようにしましたが、管理者以外の url に干渉することはありませんでした。

include RailsAdmin::Engine.routes.url_helpers

仕様内のメソッドの例

index_path(:model_name => :client)

Rails 5.0、Rspec 3.5、Capybara 2.10.1 を使用しています。

于 2016-12-14T14:46:59.643 に答える