4

ビューにメニューを作成する Rails プラグインを作成しています。link_toリンクを作成し、現在のページcurrent_page?に設定するために使用しています。class="active"

include使用できるActionView::Helpers::UrlHelperようにしましlink_toた。

ビューで作業するcurrent_page?には、現在のクラス (明らかにActionView::Base) を継承する必要があり、完全にうまく機能します。残念ながら、これは RSpec でのテストを完全に破ります。

私は電話link_toしていてcurrent_page?、このようにしています:

def menu(options = {}, &block)
  carte = my_menu.new(self)
  yield carte
  carte.to_s unless carte.empty?
end

class my_menu
  include ActionView::Helpers::TagHelper
  include ActionView::Helpers::UrlHelper

  def initialize(base)
    @base = base
  end

  def link
    @base.link_to(name, url_options, html_options)
    @base.current_page?(url_options)
  end
end

RSpec: Undefined method `link_to' for #< Spec::Rails::Example::RailsExampleGroup::Subclass_1:0x24afa90> でこのエラーが発生します。

どんな手掛かり?

4

1 に答える 1

8
include ActionView::Helpers::UrlHelper

あなたの仕様では、問題を解決する必要があります。またはあなたのspec_helper.rbで。これは基本的にビュースペックがデフォルトで行うことだと思います。

于 2008-10-12T16:41:12.267 に答える