3

これconfig.rbは機能します:

helpers do
    def link_to_nothing(text)
        link_to(text, "#")
    end
end

テンプレートありindex.html.erb:

<%= link_to_nothing "Test link" %>


Middleman::Sitemap::Resourceしかし、これでクラスに メソッドを追加しようとするとconfig.rb:

helpers do
    class Middleman::Sitemap::Resource
        def link(text)
            link_to(text, path)
        end
    end
end

テンプレートありindex.html.erb:

<%= current_page.link "This page" %>

ページの読み込み時に次のエラーが表示されます。

/index.html の NoMethodError

#<Middleman::Sitemap::Resource:0x3139848> の未定義メソッド `link_to'

4

1 に答える 1

2

これは、変数を介してアクセスできるlink_toclass のインスタンス メソッドであることがわかりました。Middleman::Applicationapp

helpers do
    class Middleman::Sitemap::Resource
       def link(text)
            app.link_to(text, path)
        end
    end
end
于 2013-07-30T16:02:17.303 に答える