2009-06-19 2 views
3

私はアプリで液体プラグインを使用しています。 form_forのようなrailsヘルパーメソッドを使用している間、check_box_tag私は定義されていないform_forエラーを取得しています..リキッドプラグイン

誰もが液体プラグインを介してレールヘルパーメソッドを使用する方法を知っていますか?

答えて

0

"Clots"と呼ばれる液体についてこのプロジェクトを見てください。おそらくこの問題に取り組んでいます(私は個人的に使っていません)。

http://github.com/ludicast/clots/tree/master

1

誰もが液体プラグインを通じてレールのヘルパーメソッドを使用する方法を知っていますか?

Liquidにはフィルタと呼ばれる独自のヘルパーがあります。 https://github.com/Shopify/liquid/wiki/Liquid-for-Designersを参照してください。

値を液体に渡す前にヘルパーを適用するか、独自のフィルタを登録して液体を拡張するかを決めることができます(https://github.com/Shopify/liquid/wiki/Liquid-for-Programmers参照)。

液体をRailsテンプレートハンドラとして登録すると、Liquidはヘルパーをフィルタとして使用しようとします。

ただし、Liquid構文を使用する必要があります。

{{ 'This is a long section of text' | truncate: 3 }} 

ない

{{ truncate('This is a long section of text', 3) }} 
5

私だけではないが長すぎる前にこれに対処して - あなたはそれは(あなたが望むことヘルパーメソッドを含む)は、通常のフィルターを拡張するために必要なものをよりよく理解をしたい場合、私はこのRailscastが非常に役に立ちました。http://railscasts.com/episodes/118-liquid

基本的に、独自のフィルタファイルを設定し、使用するヘルパーモジュールを組み込み、そのヘルパーを使用するメソッド(フィルタ)を追加する必要があります。それは難しいことではなく、セットアップにわずかな時間がかかります。そして、あなたがしなければならないすべてはあなたがいるときに覚えている

# lib/liquid_filters.rb 
module LiquidFilters 
    include ActionView::Helpers::NumberHelper 

    def currency(price) 
    number_to_currency(price) 
    end 
end 

:ライアンの例では、彼は、LiquidFiltersと呼ばれるlibにモジュールをセットアップし、彼が望んでいた数ヘルパーが含まれており、そのように通貨のフィルタを使用するように設定します追加する液体の内容を解析する:filters => [LiquidFilters](使用したいフィルターモジュールの配列を取る)、それは自動的にそれを拾うはずです。また、この方法では、カスタムフィルタを設定したり、ヘルパーフィルタを変更したりする場合は、簡単で直感的な操作を行うことができます。

1

あなたは(動作しません!)の代わりにのlink_to使用の、インスタンスとして、直接HTMLコードを使用することができ、液体テンプレート内には、液体のタグを含むHTMLコードを書くことができます。

<a href="{link}">{{link_name}}</a>"