0

Rails コンソール (https://github.com/drapergem/draper およびhttp://railscasts.com/episodes/286-draper )でいくつかの Draper デコレータの出力を確認したいと思います。そのために、アプリケーション ヘルパーと同様に、デコレータとそのメソッドを含める方法を探していました。

 include ActionView::ApplicationHelper

ドレーパー デコレーターは、Draper::Base から継承する ApplicationDecorator から継承します。

 class ApplicationDecorator < Draper::Base
 end

 class MaterialDecorator < ApplicationDecorator
    decorates :material
    #methods to decorate your material..
 end

include Draper::Base::MaterialDecoratorinclude ApplicationDecorator::MaterialDecorator、および他の同様のバリエーションをいくつか試しましたが、うまくいきませんでした。

上記のマテリアル デコレーターなどのデコレーターをレール コンソールに含めるにはどうすればよいですか?

4

2 に答える 2

1

したがって、(誰かが別の方法で表示できない限り)これはRailsコンソールでドレーパーデコレーターの出力をテストする方法ではないことがわかります。

代わりに、次のことを行います。

 material = Material.first
 material = MaterialDecorator.decorate(material)
 material.some_decorator_method
于 2012-11-27T03:55:45.940 に答える
0

app/decoratorsRails オートロード パスに追加します。

config/application.rb:

config.autoload_paths << Rails.root.join('app/decorators')

次に、そのパスの下にあるデコレーター クラスが自動的に読み込まれますrails console。. 例:

Material.first.decorate.some_decorator_method # => "good stuff"
于 2016-04-28T07:53:46.403 に答える