アプリで液体プラグインを使用しています。form_for、check_box_tag などの Rails ヘルパー メソッドを使用しているときに、form_for が定義されていないというエラーが発生します。
液体プラグインを介してレールヘルパーメソッドを使用する方法を知っている人はいますか?
アプリで液体プラグインを使用しています。form_for、check_box_tag などの Rails ヘルパー メソッドを使用しているときに、form_for が定義されていないというエラーが発生します。
液体プラグインを介してレールヘルパーメソッドを使用する方法を知っている人はいますか?
少し前にこれを扱っていました-通常のフィルター(必要なヘルパーメソッドを含む)を拡張するために必要なことをよりよく理解したい場合は、このRailscastが非常に役立つことがわかりました: http://railscasts.com/episodes /118-液体
基本的には、独自のフィルター ファイルをセットアップし、使用するヘルパー モジュールを含めてから、そのヘルパーを使用するメソッド (フィルター) を追加する必要があります。難しくはありません。セットアップには 1 秒しかかかりません。Ryan の例では、LiquidFilters と呼ばれる lib のモジュールをセットアップし、必要な数値ヘルパーを含め、次のように通貨フィルターを使用するようにセットアップしました。
# lib/liquid_filters.rb
module LiquidFilters
include ActionView::Helpers::NumberHelper
def currency(price)
number_to_currency(price)
end
end
次に、液体コンテンツを解析して :filters => [LiquidFilters] (使用するフィルター モジュールの配列を取得) を追加するときに覚えておくだけで、自動的に取得されます。また、この方法により、さらにカスタム フィルターを設定したり、ヘルパー フィルターを変更したりする場合に、簡単かつ直感的にそれを行うことができます。
液体プラグインを介してレールヘルパーメソッドを使用する方法を知っている人はいますか?
Liquid には、フィルターと呼ばれる独自のヘルパーがあります。https://github.com/Shopify/liquid/wiki/Liquid-for-Designersを参照してください。
値を Liquid に渡す前にヘルパーを適用するか、独自のフィルターを登録して Liquid を拡張するかを決定できます ( https://github.com/Shopify/liquid/wiki/Liquid-for-Programmersを参照)。
Liquid を Rails テンプレート ハンドラーとして登録すると、Liquid はヘルパーをフィルターとして使用しようとします。
ただし、Liquid 構文を使用する必要があります。
{{ 'This is a long section of text' | truncate: 3 }}
いいえ
{{ truncate('This is a long section of text', 3) }}
液体テンプレート内でlink_toを使用する代わりに(動作しません!)、インスタンスとして直接 html コードを使用できます。液体タグを使用して html コードを記述できます。
<a href="{link}">{{link_name}}</a>"
「Clots」と呼ばれる Liquid のこのプロジェクトを見てください。おそらくこの問題に対処しています(私は個人的には使用していません)。