Railsには、distance_of_time_in_wordsを使用して時間の距離を単語に変換するヘルパーがあります
この関数を取得するためにirbプロンプトでRubyを使用している場合、何を含める必要がありますか?
私は試した require 'action_view'
しかし、それは役に立ちませんでした。
私も試しましたrequire 'active_support/core_ext'
しかし、それも役に立ちませんでした。
これは機能するはずです:
require 'action_view'
include ActionView::Helpers::DateHelper
これらの両方は、いくつかの理由で実行する必要があります。まず、ライブラリを要求して、そのモジュールとメソッドを呼び出せるようにする必要があります。これが、require 'action_view'
を実行する必要がある理由です。
次に、distance_of_time_in_words
はモジュールであり、それ自体では独立していないため、クラスに含める必要があります。次に、そのクラスのインスタンスでdistance_of_time_in_words
を呼び出すことでアクセスできます。
コンソールを使用しているときは、すでにObject
クラスのインスタンスが実行されています。これは、irbコンソールでself
を呼び出すことで確認できます。 include ActionView::Helpers::DateHelper
を呼び出すと、Object
クラスの任意のインスタンスにこれらのメソッドが含まれます。これはirbコンソールの暗黙のレシーバーであるため、コンソールにdistance_of_time_in_words
を保存して、必要なものを取得できます。
お役に立てば幸いです。
ジョー