Liquid リファレンス
3scale インストールに関する補足情報の提供
概要
第1章 Liquid リファレンス
1.1. Liquid とは
Liquid はシンプルなプログラミング言語で、API プロバイダーが利用可能な 3scale システムからのデータのほとんどを表示および処理するのに使用されます。Liquid は元来 Shopify が開発したもので、Web を通じて他の多くの CMS エンジンで使用されています。3scale プラットフォームでは、これを使用してサーバー側のデータを API 開発者に公開し、高いセキュリティーレベルを維持しながら CMS の有用性を大幅に向上させています。
1.1.1. メリットとデメリット
Liquid は、主にサーバー側のデータを取得してデベロッパーポータルのページに表示するのに使用されます。しかし、Liquid にはこれ以外にも多くの機能があります。以下の用途にも使用することができます。
- サーバー側のデータに基づきページの DOM およびコンテンツを変更する。
- ページ、パーシャル、およびレイアウトにロジックを追加する。
- 開発者に送信されるメールのテンプレートを操作する。
Liquid が問題解決の最適解を提供しないケースもあります。主に、ユーザーからのインプットやページの URL 等の動的なデータを使用しなければならない場合です。
一般的なアドバイスとしては、ページにロジックを追加する手段として先ず Liquid を使用し、不可能である、または過度に複雑になることが分かったら、JavaScript に切り替える、あるいは JavaScript に Liquid を追加する (Liquid は JS との組み合わせでも適切に機能するため) ことを推奨します。
1.2. Liquid の使用方法
Liquid のマークアップには、ロジックタグとアウトプットタグの 2 種類があります。ロジックタグ (MISSING で識別) は、if 節やループ等の標準的なプログラミング言語の要素が含まれる条件付き Liquid ステートメントです。
{% if current_user %} <!-- if the user is logged in --> <a href="/logout">Logout</a> <!-- show the logout link --> {% else %} <!-- if the user is not logged in --> <a href="/login">Login</a> <!-- display the login link --> {% endif %}
アウトプットタグ ({{ }}で識別) は、中かっこ間のタグの値を表示するのに使用されます。
{{ current_user.username }} <!-- display the logged-in user's username value -->
ロジックタグに関するドキュメントは、Shopify のチュートリアル を参照してください。3scale の Liquid アウトプットタグに関する詳細なリファレンスは、このページ および管理ポータルの Help > Liquid Reference の両方に記載されています。
1.2.1. Liquid ドロップ、タグ、およびその意味
3scale の CMS では、以下の 3 種類の Liquid マークアップを使用することができます。
-
liquid ドロップ (例:
{{ current_account.name }}
) -
liquid タグ (例:
{% content %}
) -
フィルター (例:
{{ form.errors.description | error_class }}
)
すべての Liquid タグ、ドロップ、およびフィルターの全リストは、このページ を参照してください。
これらは、ロジックタグおよびアウトプットタグとほとんど同じで、ほぼ同じように機能します。Liquid ドロップは最も基本的な構造で、ほとんどのケースで使用されます。これを使用して、ユーザー名やアプリケーション ID 等の、システムに保管されている特定の値にアクセスすることができます。これらは、他のアウトプットタグと同様に、インタープリターにより処理されます。
一方、Liquid タグはロジックタグの一種で、より高度なカスタマイズのためにシステムの特定部分をレンダリングしたり、アクセスしたりするのに使用されます (例: レイアウト内のコンテンツのレンダリング、メールテンプレートのカスタマイズ)。
その名前から分かるように、フィルターはドロップからの結果の絞り込み、値の変換、特定のキーによるグルーピングのオプションを有効にします。標準 Liquid フィルターのグループ (詳細は Shopify の Web サイト を参照) および特殊な 3scale 内部フィルターのグループ (詳細は 参照ページ に記載) があります。
1.2.2. コンテキスト
コンテキストは、現在のページで使用可能な変数 (ドロップ) を記述します。基本セットには以下の変数が含まれます。
- provider
- urls
- current_user
- current_account
- today
これらの変数は、CMS 全体をとおしてすべてのページで利用可能です (メールテンプレートを除く)。ただし、ほとんどの組み込みページでは、いくつかの追加変数を利用することができます。たとえば、ユーザーの編集フォームでは user 変数が利用可能です (current_user ではなく。ユーザーの編集ページでは、ユーザーの ID は既知の情報です)。現在のページで利用可能な変数を確認するために、特別なタグ {% debug:help %}
が用意されています。使用することのできるすべての最上位変数のリストが、ページソースのコメントとして追加されます。
1.2.3. 階層
コンテキストの結果として、Liquid ドロップは階層構造で整理されます。使用可能な変数のセットは、使用できる最上位ドロップのリストだけを示します。これらを使用して、階層内のより深い位置にある要素にアクセスすることができます。たとえば、ログインしているユーザーのユーザー名を表示する場合は、{{ current_user.username }}
と記述します。
より下層のドロップを表示するのは、これより若干複雑です。ユーザーのアプリケーションの名前だけを表示すると仮定します。リファレンスガイドを見ると、メソッドアプリケーションがアカウントドロップの一部であることが分かります。つまり、アプリケーションは単一アプリケーションのタグの配列です。ユーザーに複数のアプリケーションが許可されている場合は、ロジックタグを使用してそれぞれのアプリケーションについて処理を繰り返す必要があります。そうでなければ、アカウントの最初の (そして唯一の) アプリケーションを参照することができます。これを表示するコードは {{ current_account.applications.first.name }}
のようになります。
1.3. Liquid テンプレート
すべての Liquid テンプレートで以下の変数を使用することができます。
- provider: 1 つにまとめられたすべてのサービス、プラン、および設定
- urls: デベロッパーポータルの組み込みページ (ログイン、サインアップ等) へのルート
- current_user: 現在ログインしているユーザー のユーザー名、アドレス、および権限
- current_account: 現在ログインしているユーザー のメッセージ、アプリケーション、およびプラン
- today: 本日の日付
組み込みページでは、その他の変数も利用することができます (CMS エディターで説明されます)。たとえば、ユーザーの編集フォームには user
変数が割り当てられています。または、アプリケーションの情報を表示する際に application
変数にアクセスすることができます。
変数の種類を知ることは本リファレンスを使用する上で重要なことですが、そのためにはページに {% debug:help %}
タグを配置します。これにより利用可能なすべての変数およびその種類のリストが HTML コメントに表示されます。ただし、通常は、メソッドまたは変数の名前から容易に想像することができます。
1.4. ドロップ
- Account ドロップ
- AccountPlan ドロップ
- Alert ドロップ
- Application ドロップ
- ApplicationKey ドロップ
- ApplicationPlan ドロップ
- Base ドロップ
- Base ドロップ
- BillingAddressField ドロップ
- Can ドロップ
- Can ドロップ
- Cas ドロップ
- Contract ドロップ
- Country ドロップ
- CountryField ドロップ
- CurrentUser ドロップ
- Error ドロップ
- Errors ドロップ
- Feature ドロップ
- Field ドロップ
- Flash ドロップ
- Forum ドロップ
- I18n ドロップ
- Invitation ドロップ
- Invoice ドロップ
- LineItem ドロップ
- Message ドロップ
- Message ドロップ
- Metric ドロップ
- Page ドロップ
- Page ドロップ
- Pagination ドロップ
- Part ドロップ
- PaymentGateway ドロップ
- PaymentTransaction ドロップ
- PlanFeature ドロップ
- Post ドロップ
- Post ドロップ
- PricingRule ドロップ
- Provider ドロップ
- ReferrerFilter ドロップ
- Request ドロップ
- Role ドロップ
- Search ドロップ
- Service ドロップ
- ServiceContract ドロップ
- ServicePlan ドロップ
- TimeZone ドロップ
- Today ドロップ
- Topic ドロップ
- Topic ドロップ
- URL ドロップ
- URLs ドロップ
- UsageLimit ドロップ
- User ドロップ
1.5. タグ
1.6. フィルター
1.7. ドロップ (up)
1.7.1. Account ドロップ (up)
開発者のアカウント。メールアドレスまたは類似の情報が必要な場合は、User
ドロップを参照してください。
<h2>Account organization name {{ current_account.name }}</h2> Plan {{ current_account.bought_account_plan.name }} Telephone {{ current_account.telephone_number }} {{ current_account.fields_plain_text }} {{ current_account.extra_fields_plain_text }} {% if current_account.approval_required? %} <p>This account requires approval.</p> {% endif %} {% if current_account.credit_card_required? %} {% if current_account.credit_card_stored? %} <p>This account has credit card details stored in database.</p> {% else %} <p>Please enter your {{ 'credit card details' | link_to: urls.payment_details }}.</p> {% endif %} {% if current_account.credit_card_missing? %} <p>This account has no credit card details stored in database.</p> {% endif %} {% endif %}
1.7.1.1. メソッド
1.7.1.1.1. errors
送付に失敗した後にこのモデルのフォームがレンダリングされると、発生したエラーを返します。
{{ account.errors.name | inline_errors }}
1.7.1.1.2. id
アカウントの ID を返します。
1.7.1.1.3. name
開発者のアカウントの組織名を返します。
1.7.1.1.4. vat_zero_text
VAT ゼロに関するテキストを返します。
1.7.1.1.5. vat_rate
VAT レートを返します。
1.7.1.1.6. unread_messages
未読メッセージ
1.7.1.1.7. latest_messages
最新のメッセージを返します。
1.7.1.1.8. bought_account_plan
アカウントが契約しているプランを返します。
1.7.1.1.9. bought_account_contract
契約アカウントを返します。
1.7.1.1.10. credit_card_display_number
1.7.1.1.11. credit_card_expiration_date
1.7.1.1.12. credit_card_required?
クレジットカード情報の入力が必要なアカウントかどうかを返します。
1.7.1.1.13. credit_card_stored?
アカウントにクレジットカード情報が保存されているかどうかを返します。
1.7.1.1.14. credit_card_missing?
アカウントにクレジットカード情報が保存されていないかどうかを返します。
1.7.1.1.15. timezone
このアカウントのタイムゾーンを返します。
1.7.1.1.16. paid?
アカウントに少なくとも有料の契約があるかどうかを返します。
1.7.1.1.17. on_trial?
アカウントがトライアル期間中であるかどうかを返します (有料の契約はすべてトライアル期間中でなければなりません)。
1.7.1.1.18. telephone_number
アカウントの電話番号を返します。
1.7.1.1.19. approval_required?
アカウントに承認が必要かどうかを返します。
1.7.1.1.20. created_at
アカウント作成 (サインアップ) の UNIX タイムスタンプを返します (例: タイムスタンプを JavaScript の日付に変換する)。
<script> var data = new Date({{ account.created_at }} * 1000); </script>
1.7.1.1.21. full_address
法人住所、市区町村、および都道府県で設定されます。
1.7.1.1.22. applications
アカウントのアプリケーションを返します。
1.7.1.1.23. subscribed_services
ServiceContract ドロップによる配列を返します。
1.7.1.1.24. admin
このアカウントの管理ユーザーを返します。
1.7.1.1.25. extra_fields_plain_text
アカウントに対して定義された追加フィールドをプレーンテキストで返します。
1.7.1.1.26. fields_plain_text
アカウントに対して定義されたフィールドをプレーンテキストで返します。
1.7.1.1.27. extra_fields
このアカウントの追加フィールドだけを値と共に返します (例: すべての追加フィールドを表示する)。
{% for field in account.extra_fields %} {{ field.label }}: {{ field.value }} {% endfor %}
1.7.1.1.28. fields
このアカウントのすべてのフィールドを値と共に返します (例: すべてのフィールドを表示する)。
{% for field in account.fields %} {{ field.label }}: {{ field.value }} {% endfor %}
1.7.1.1.29. builtin_fields
1.7.1.1.30. multiple_applications_allowed?
1.7.1.1.31. billing_address
このアカウントの請求先住所を返します。
1.7.1.1.32. has_billing_address?
このアカウントに請求先住所が登録されているかどうかを返します。
1.7.1.1.33. can
パーミッションメソッドへのアクセス権限を付与します。
{% if account.can.be_deleted? %} <!-- do something --> {% endif %}
1.7.1.1.34. edit_url
1.7.1.1.35. edit_ogone_billing_address_url
1.7.1.1.36. edit_payment_express_billing_address_url
1.7.1.1.37. edit_braintree_blue_credit_card_details_url
1.7.1.1.38. domain
1.7.1.1.39. upgraded?
1.7.1.1.40. requires_credit_card?
1.7.1.1.41. support_email
1.7.1.1.42. finance_support_email
1.7.2. AccountPlan ドロップ (up)
例: Liquid の AccountPlan ドロップを使用する
<p class="notice">The examples for plan drop apply here</p>
1.7.2.1. メソッド
1.7.2.1.1. selected?
プランが選択されているかどうかを返します。
{% if plan.selected? %} <p>You will signup to {{ plan.name }}</p> {% endif %}
1.7.2.1.2. bought?
プランが購入されているかどうかを返します。
{% if plan.bought? %} <p>You are on this plan already!</p> {% endif %}
1.7.2.1.3. features
利用可能な機能の配列を返します。
1.7.2.1.4. setup_fee
開設費を返します。
1.7.2.1.5. name
プランの名前を返します。
<h2>We offer you a new {{ plan.name }} plan!</h2>
1.7.2.1.6. system_name
プランのシステム名を返します。
{% for plan in available_plans %} {% if plan.system_name == 'my_free_plan' %} <p>You will buy our only free plan!</p> {% endif %} {% endfor %}
1.7.2.1.7. id
プランの ID を返します。
1.7.2.1.8. free?
プランは有料でなければ無料です (paid? メソッドを参照)。
{% if plan.free? %} <p>This plan is free of charge.</p> {% else %} <p>Plan costs</p> Setup fee {{ plan.setup_fee }} Flat cost {{ plan.flat_cost }} {% endif %}
1.7.2.1.9. paid?
固定費または開設費がゼロではない場合や、何らかの課金ルールが設定されている場合、プランは有料です。
{% if plan.paid? %} <p>this plan is a paid one.</p> {% else %} <p>this plan is a free one.</p> {% endif %}
1.7.2.1.10. approval_required?
プランに承認が必要かどうかを返します。
{% if plan.approval_required? %} <p>This plan requires approval.</p> {% endif %}
1.7.2.1.11. flat_cost
プランの月額固定費を返します。
1.7.3. Alert ドロップ (up)
例: Liquid の Alert ドロップを使用する
<h2>Alert details</h2> Level {{ alert.level }} Message {{ alert.message }} Utilization {{ alert.utilization }}
1.7.3.1. メソッド
1.7.3.1.1. level
アラートレベルは、50、80、90、100、120、150、200、300 のいずれかです。
1.7.3.1.2. message
アラートについて記述したテキストメッセージ (例:hits per minute: 5 of 5)
1.7.3.1.3. utilization
アラートのトリガーとなった実際の使用率を示す小数 (1.0 は 100% に等しい)
Used by {{ alert.utilization | times: 100 }} percent.
1.7.4. Application ドロップ (up)
例: Liquid の Application ドロップを使用する
<h2>Application {{ application.name }} ({{ application.application_id }})</h2> <p>{{ application.description }}</p>
1.7.4.1. メソッド
1.7.4.1.1. errors
送付に失敗した後にこのモデルのフォームがレンダリングされると、発生したエラーを返します。
{{ application.errors.name | inline_errors }}
1.7.4.1.2. id
アプリケーションの ID を返します。
1.7.4.1.3. can_change_plan?
直接またはリクエストによりアプリケーションの変更が許可される場合は true を返します。
1.7.4.1.4. trial?
契約がまだトライアル期間中であれば true を返します。
注記: プランのトライアル期間の長さを変更しても、既存の契約に影響を及ぼしません。
1.7.4.1.5. live?
1.7.4.1.6. state
状態は以下の 3 つのいずれかです。
- pending - live - suspended
1.7.4.1.7. remaining_trial_period_days
トライアル期間の残り日数
1.7.4.1.8. プラン
アプリケーションのプランと共に plan ドロップを返します。
1.7.4.1.9. plan_change_permission_name
許可されるアクションの名前を返します。
1.7.4.1.10. plan_change_permission_warning
許可されるアクションの警告メッセンジャーを返します。
1.7.4.1.11. contract
1.7.4.1.12. admin_url
アプリケーションの admin_url を返します。
1.7.4.1.13. name
アプリケーションの名前を返します。
1.7.4.1.14. can
1.7.4.1.15. oauth
1.7.4.1.16. pending?
アプリケーションの状態が保留中の場合は true を返します。
1.7.4.1.17. buyer_alerts_enabled?
1.7.4.1.18. description
アプリケーションの説明を返します。
1.7.4.1.19. redirect_url
アプリケーションの OAuth 用リダイレクト URL を返します。
1.7.4.1.20. filters_limit
このアプリケーションで許可される参照元フィルターの量を返します。
1.7.4.1.21. keys_limit
このアプリケーションで許可されるアプリケーションキーの量を返します。
1.7.4.1.22. referrer_filters
このアプリケーションに関連付けられた参照元フィルターを返します。
1.7.4.1.23. rejection_reason
アプリケーションを拒否した理由を返します。
1.7.4.1.24. user_key
アプリケーションの user_key を返します。
1.7.4.1.25. application_id
アプリケーションの application_id を返します。
1.7.4.1.26. key
アプリケーションの ID またはユーザーキーを返します。
1.7.4.1.27. url
このアプリケーションの組み込みの詳細ビューの URL を返します。
1.7.4.1.28. edit_url
このアプリケーションの組み込みの編集ビューの URL を返します。
1.7.4.1.29. update_user_key_url
1.7.4.1.30. log_requests_url
1.7.4.1.31. alerts_url
1.7.4.1.32. application_keys_url
1.7.4.1.33. サービス
対象のアプリケーションが属するサービス
1.7.4.1.34. keys
アプリケーションのキーを返します。
{% case application.keys.size %} {% when 0 %} Generate your application key. {% when 1 %} <h4>Application key for {{ application.name }} {{ application.application_id }}</h4> <p>Key is: {{ application.keys.first }}</p> {% else %} <h4>Application keys for {{ application.name }} {{ application.application_id }}</h4> <ul> {% for key in application.keys %} <li>{{ key }}</li> {% endfor %} </ul> {% endcase %}
1.7.4.1.35. user_key_mode?
1.7.4.1.36. app_id_mode?
1.7.4.1.37. change_plan_url
1.7.4.1.38. log_requests?
1.7.4.1.39. application_keys
1.7.4.1.40. extra_fields
このアプリケーションの非表示ではない追加フィールドを値と共に返します (例: すべての追加フィールドを表示する)。
{% for field in application.extra_fields %} {{ field.label }}: {{ field.value }} {% endfor %}
1.7.4.1.41. fields
このアプリケーションのすべての組み込みおよび追加フィールドを値と共に返します (例: すべてのフィールドを表示する)。
{% for field in application.fields %} {{ field.label }}: {{ field.value }} {% endfor %}
1.7.4.1.42. builtin_fields
アプリケーションの組み込みフィールドだけを返します。
1.7.4.1.43. cinstance
1.7.5. ApplicationKey ドロップ (up)
1.7.5.1. メソッド
1.7.5.1.1. id
1.7.5.1.2. value
1.7.5.1.3. url
1.7.5.1.4. アプリケーション
1.7.6. ApplicationPlan ドロップ (up)
1.7.6.1. メソッド
1.7.6.1.1. selected?
プランが選択されているかどうかを返します。
{% if plan.selected? %} <p>You will signup to {{ plan.name }}</p> {% endif %}
1.7.6.1.2. bought?
プランが購入されているかどうかを返します。
{% if plan.bought? %} <p>You are on this plan already!</p> {% endif %}
1.7.6.1.3. features
プランの表示される機能を返します。
{% if plan == my_free_plan %} <p>These plans are the same.</p> {% else %} <p>These plans are not the same.</p> {% endif %}
1.7.6.1.4. setup_fee
プランの開設費を返します。
1.7.6.1.5. name
プランの名前を返します。
<h2>We offer you a new {{ plan.name }} plan!</h2>
1.7.6.1.6. system_name
プランのシステム名を返します。
{% for plan in available_plans %} {% if plan.system_name == 'my_free_plan' %} <p>You will buy our only free plan!</p> {% endif %} {% endfor %}
1.7.6.1.7. id
プランの ID を返します。
1.7.6.1.8. free?
プランは有料でなければ無料です (paid? メソッドを参照)。
{% if plan.free? %} <p>This plan is free of charge.</p> {% else %} <p>Plan costs</p> Setup fee {{ plan.setup_fee }} Flat cost {{ plan.flat_cost }} {% endif %}
1.7.6.1.9. paid?
固定費または開設費がゼロではない場合や、何らかの課金ルールが設定されている場合、プランは有料です。
{% if plan.paid? %} <p>this plan is a paid one.</p> {% else %} <p>this plan is a free one.</p> {% endif %}
1.7.6.1.10. approval_required?
プランに承認が必要かどうかを返します。
{% if plan.approval_required? %} <p>This plan requires approval.</p> {% endif %}
1.7.6.1.11. flat_cost
プランの月額固定費を返します。
1.7.6.1.12. metrics
プランのメトリクスを返します。
1.7.6.1.13. usage_limits
プランの使用限度を返します。
1.7.6.1.14. サービス
プランのサービスを返します。
1.7.7. Base ドロップ (up)
1.7.7.1. メソッド
1.7.7.1.1. login_url
1.7.7.1.2. user_identified?
1.7.8. Base ドロップ (up)
1.7.8.1. メソッド
1.7.8.1.1. errors
送付に失敗した後にこのモデルのフォームがレンダリングされると、発生したエラーを返します。
{{ base.errors.name | inline_errors }}
1.7.8.1.2. title
タイトルの結果を返します。
1.7.8.1.3. kind
結果の種類を返します (topic または page)。
1.7.8.1.4. url
結果のリソース URL を返します。
1.7.8.1.5. description
結果を説明する文字列を返します。
1.7.9. BillingAddressField ドロップ (up)
1.7.9.1. メソッド
1.7.9.1.1. input_name
1.7.9.1.2. label
1.7.9.1.3. choices
1.7.9.1.4. errors
1.7.9.1.5. html_id
1.7.9.1.6. hidden?
1.7.9.1.7. visible?
1.7.9.1.8. read_only?
1.7.9.1.9. name
1.7.9.1.10. value
1.7.9.1.11. required
1.7.10. Can ドロップ (up)
1.7.10.1. メソッド
1.7.10.1.1. be_updated?
1.7.10.1.2. add_referrer_filters?
1.7.10.1.3. add_application_keys?
1.7.10.1.4. regenerate_user_key?
1.7.10.1.5. regenerate_oauth_secret?
1.7.10.1.6. manage_keys?
1.7.10.1.7. delete_key?
1.7.11. Can ドロップ (up)
1.7.11.1. メソッド
1.7.11.1.1. change_plan?
1.7.12. Cas ドロップ (up)
1.7.12.1. メソッド
1.7.12.1.1. login_url
1.7.12.1.2. user_identified?
1.7.13. Contract ドロップ (up)
Plan of the contract {{ contract.plan.name }}
1.7.13.1. メソッド
1.7.13.1.1. errors
送付に失敗した後にこのモデルのフォームがレンダリングされると、発生したエラーを返します。
{{ contract.errors.name | inline_errors }}
1.7.13.1.2. id
ID を返します。
1.7.13.1.3. can_change_plan?
何らかの変更が可能な場合は true を返します。
1.7.13.1.4. trial?
契約がまだトライアル期間中であれば true を返します。
注記: プランのトライアル期間の長さを変更しても、既存の契約に影響を及ぼしません。
1.7.13.1.5. live?
1.7.13.1.6. state
状態は以下の 3 つのいずれかです。
- pending - live - suspended
1.7.13.1.7. remaining_trial_period_days
トライアル期間の残り日数
1.7.13.1.8. プラン
契約のプランを返します。
1.7.13.1.9. plan_change_permission_name
許可されるアクションの名前を返します。
1.7.13.1.10. plan_change_permission_warning
許可されるアクションの警告メッセンジャーを返します。
1.7.13.1.11. contract
1.7.14. Country ドロップ (up)
1.7.14.1. メソッド
1.7.14.1.1. errors
送付に失敗した後にこのモデルのフォームがレンダリングされると、発生したエラーを返します。
{{ country.errors.name | inline_errors }}
1.7.14.1.2. to_str
1.7.14.1.3. code
1.7.14.1.4. label
1.7.15. CountryField ドロップ (up)
1.7.15.1. メソッド
1.7.15.1.1. value
国の ID を返します。
{{ account.fields.country.value }} => 42 compare with: {{ account.fields.country }} => 'United States'
1.7.15.1.2. name
フィールドのシステム名を返します。
1.7.15.1.3. required
1.7.15.1.4. hidden?
1.7.15.1.5. hidden
1.7.15.1.6. visible?
1.7.15.1.7. visible
1.7.15.1.8. read_only
1.7.15.1.9. errors
1.7.15.1.10. input_name
1.7.15.1.11. html_id
1.7.15.1.12. label
フィールドのラベルを返します。
{{ account.fields.country.label }} <!-- => 'Country' -->
1.7.15.1.13. to_str
国名を返します。
{{ account.fields.country }} => 'United States'
1.7.15.1.14. choices
1.7.16. CurrentUser ドロップ (up)
1.7.16.1. メソッド
1.7.16.1.1. errors
送付に失敗した後にこのモデルのフォームがレンダリングされると、発生したエラーを返します。
{{ current_user.errors.name | inline_errors }}
1.7.16.1.2. admin?
ユーザーが管理者かどうかを返します。
{% if user.admin? %} <p>You are an admin of your account.</p> {% endif %}
1.7.16.1.3. username
ユーザーのユーザー名を返します (html エスケープ)。
1.7.16.1.4. アカウント
ユーザーのアカウントを返します。
1.7.16.1.5. name
ユーザーの苗字および名前を返します。
1.7.16.1.6. email
ユーザーのメールアドレスを返します。
1.7.16.1.7. password_required?
このメソッドは、組み込みのデベロッパーポータルの認証メカニズムを使用するユーザーの場合は true
を返し、Janrain、CAS、またはその他のシングルサインオンメソッドで認証されるユーザーの場合は false
を返します。
{{ if user.password_required? }} {{ endif }}
1.7.16.1.8. sections
ユーザーがアクセスすることのできるセクションのリストを返します。
{% if user.sections.size > 0 %} <p>You can access following sections of our portal:</p> <ul> {% for section in user.sections %} <li>{{ section }}</li> {% endfor %} </ul> {% endif %}
1.7.16.1.9. role
ユーザーのロールを返します。
1.7.16.1.10. roles_collection
ユーザーが利用可能なロールのリストを返します。
{% for role in user.roles_collection %} <li> <label for="user_role_{{ role.key }}"> {{ role.text }} </label> </li> {% endfor %}
1.7.16.1.11. url
ユーザーのリソース URL を返します。
{{ 'Delete' | delete_button: user.url }}
1.7.16.1.12. edit_url
ユーザーを編集するための URL を返します。
{{ 'Edit' | link_to: user.edit_url, title: 'Edit', class: 'action edit' }}
1.7.16.1.13. can
現在のユーザーの権限 (設定およびユーザーのロールにより異なる) を公開します。返されたオブジェクトに対して以下のメソッドを呼び出すことができます。
- invite_user?
- create_application?
- see_log_requests?
{% if current_user.can.see_log_requests? and application.log_requests? %} (<a href="{{ application.log_requests_url }}" class="action edit">App Request Log</a>) {% endif %}
1.7.16.1.14. extra_fields
このユーザーの非表示ではない追加フィールドを値と共に返します (例: すべての追加フィールドを表示する)。
{% for field in user.extra_fields %} {{ field.label }}: {{ field.value }} {% endfor %}
1.7.16.1.15. fields
このユーザーのすべてのフィールドを値と共に返します (例: すべてのフィールドを表示する)。
{% for field in user.fields %} {{ field.label }}: {{ field.value }} {% endfor %}
1.7.16.1.16. builtin_fields
このユーザーのすべての組み込みフィールドを値と共に返します。
1.7.17. Error ドロップ (up)
データが無効なためにフォームの送信に失敗した場合、関連するモデルで errors
配列が利用可能になります。
1.7.17.1. メソッド
1.7.17.1.1. attribute
このエラーが関連するモデルの属性を返します。
{{ account.errors.org_name.first.attribute }} <!-- org_name -->
1.7.17.1.2. message
エラーの説明を返します。
{{ account.errors.first.message }} <!-- can't be blank -->
1.7.17.1.3. value
error
が関連する属性の値を返します。
{{ account.errors.org_name.first.value }} <!-- => "ACME Co." -->
1.7.17.1.4. to_str
エラーの説明全体を返します (属性名を含む)。
{{ model.errors.first }} <!-- => "Attribute can't be blank" -->
1.7.18. Errors ドロップ (up)
例: すべてのエラーを取得する
{% for error in form.errors %} attribute: {{ error.attribute }} ... {% endfor %}
1.7.18.1. メソッド
1.7.18.1.1. empty?
エラーがなければ true を返します。
{% if form.errors == empty %} Congratulations! You have no errors! {% endif %}
1.7.18.1.2. present?
何らかのエラーがあれば true を返します。
{% if form.errors == present %} Sorry, there were some errors. {% endif %}
1.7.19. Feature ドロップ (up)
1.7.19.1. メソッド
1.7.19.1.1. errors
送付に失敗した後にこのモデルのフォームがレンダリングされると、発生したエラーを返します。
{{ feature.errors.name | inline_errors }}
1.7.19.1.2. name
機能の名前を返します。
<h2>Feature {{ feature.name }}</h2>
1.7.19.1.3. description
機能の説明を返します。
1.7.19.1.4. has_description?
機能に説明があるかどうかを返します。
{% if feature.has_description? %} {{ feature.description }} {% else %} This feature has no description. {% endif %}
1.7.20. Field ドロップ (up)
1.7.20.1. メソッド
1.7.20.1.1. value
フィールドの値を返します。
Name: {{ account.fields.first_name.value }}
1.7.20.1.2. name
フィールドのシステム名を返します。
1.7.20.1.3. required
1.7.20.1.4. hidden?
1.7.20.1.5. hidden
1.7.20.1.6. visible?
1.7.20.1.7. visible
1.7.20.1.8. read_only
1.7.20.1.9. errors
1.7.20.1.10. input_name
フォームの送信時に想定される HTML 入力の名前を返します。
<!-- the 'name' attribute will be 'account[country]' -->
1.7.20.1.11. html_id
HTML ID の属性として一般的に使用される一意のフィールド識別子を返します。
{{ account.fields.country.html_id }} <!-- => 'account_country' -->
1.7.20.1.12. label
フィールドのラベルを返します。
{{ account.fields.country.label }} <!-- => 'Country' -->
1.7.20.1.13. to_str
変数として使用されている場合は、フィールドの値を返します。
{{ account.fields.first_name }} => 'Tom'
1.7.20.1.14. choices
対象のフィールドで利用可能な選択肢があれば、その配列を返します。たとえば、fruit
というフィールドの場合、['apple', 'bannana', 'orange']
で応答する可能性があります。
/admin/fields_definitions[admin dashboard] で選択肢を定義することができます。id
および label
に応答するそれぞれの配列要素は、特殊な組み込みフィールド (例: country
) でない限り通常は同じです。今後の互換性のために、choice
をそのまま出力するよりも、これらのメソッドを使用することを推奨します。
{% for choice in field.choices %} <select name="{{ field.input_name }}" id="{{ field.html_id }}_id" class="{{ field.errors | error_class }}"> <option {% if field.value == choice %} selected {% endif %} value="{{ choice.id }}"> {{ choice }} </option> {% endfor %}
1.7.21. Flash ドロップ (up)
1.7.21.1. メソッド
1.7.21.1.1. messages
メッセージの配列を返します。
{% for message in flash.messages %} <p id="flash-{{ message.type }}"> {{ message.text }} </p> {% endfor %}
1.7.22. Forum ドロップ (up)
1.7.22.1. メソッド
1.7.22.1.1. enabled?
フォーラム機能が有効な場合は true を返します。
{% if forum.enabled? %} <a href="/forum">Check out our forum!</a> {% endif %}
1.7.22.1.2. latest_posts
1.7.23. I18n ドロップ (up)
Provide useful strings for i18n support. {{ object.some_date | date: i18n.long_date }}
1.7.23.1. メソッド
1.7.23.1.1. short_date
%b %d
のエイリアス
Dec 11
1.7.23.1.2. long_date
%B %d、%Y
のエイリアス
December 11, 2013
1.7.23.1.3. default_date
%Y-%m-%d
のエイリアス
2013-12-11
1.7.24. Invitation ドロップ (up)
Email: {{ invitation.email }} <tr id="invitation_{{ invitation.id }}"> <td> {{ invitation.email }} </td> <td> {{ invitation.sent_at | date: i18n.short_date }} </td> <td> {% if invitation.accepted? %} yes, on {{invitation.accepted_at | format: i18n.short_date }} {% else %} no {% endif %} </td> </tr>
1.7.24.1. メソッド
1.7.24.1.1. errors
送付に失敗した後にこのモデルのフォームがレンダリングされると、発生したエラーを返します。
{{ invitation.errors.name | inline_errors }}
1.7.24.1.2. email
メールアドレスを返します。
1.7.24.1.3. accepted?
招待状が受理された場合は true を返します。
1.7.24.1.4. accepted_at
招待状が受理された場合は日付を返します。
{{ invitation.accepted_at | date: i18n.short_date }}
1.7.24.1.5. sent_at
作成日を返します。
{{ invitation.sent_at | date: i18n.short_date }}
1.7.24.1.6. resend_url
招待状を再送するための URL を返します。
{{ "Resend" | update_button: invitation.resend_url}}
1.7.24.1.7. url
リソース URL を返します。
{{ "Delete" | delete_button: invitation.url }}
1.7.25. Invoice ドロップ (up)
1.7.25.1. メソッド
1.7.25.1.1. errors
送付に失敗した後にこのモデルのフォームがレンダリングされると、発生したエラーを返します。
{{ invoice.errors.name | inline_errors }}
1.7.25.1.2. friendly_id
平易な ID を返します。
<td> {{ invoice.id }} </td> <td> {{ invoice.name }} </td> <td> {{ invoice.state }} </td> <td> {{ invoice.cost }} {{ invoice.currency }} </td>
1.7.25.1.3. name
月と年で設定される文字列
1.7.25.1.4. state
1.7.25.1.5. cost
小数点以下 2 桁の数値を返します。
23.00
1.7.25.1.6. currency
1.7.25.1.7. cost_without_vat
VAT を除いたコストを返します。
1.7.25.1.8. vat_amount
VAT の額を返します。
1.7.25.1.9. exists_pdf?
PDF が生成されていれば true を返します。
1.7.25.1.10. period_begin
{{ invoice.period_begin | date: i18n.short_date }}
1.7.25.1.11. period_end
{{ invoice.period_end | date: i18n.long_date }}
1.7.25.1.12. issued_on
{{ invoice.issued_on | date: i18n.long_date }}
1.7.25.1.13. due_on
{{ invoice.due_on | date: i18n.long_date }}
1.7.25.1.14. paid_on
{{ invoice.paid_on | date: i18n.long_date }}
1.7.25.1.15. vat_code
1.7.25.1.16. fiscal_code
1.7.25.1.17. アカウント
AccountDrop を返します。
1.7.25.1.18. buyer_account
1.7.25.1.19. line_items
LineItemDrop の配列を返します。
{% for line_item in invoice.line_items %} <tr class="line_item {% cycle 'odd', 'even' %}"> <th>{{ line_item.name }}</th> <td>{{ line_item.description }}</td> <td>{{ line_item.quantity }}</td> <td>{{ line_item.cost }}</td> </tr> {% endfor %}
1.7.25.1.20. payment_transactions
PaymentTransactionDrop の配列を返します。
{% for payment_transaction in invoice.payment_transactions %} <tr> <td> {% if payment_transaction.success? %} Success {% else %} Failure {% endif %} </td> <td> {{ payment_transaction.created_at }} </td> <td> {{ payment_transaction.reference }} </td> <td> {{ payment_transaction.message }} </td> <td> {{ payment_transaction.amount }} {{ payment_transaction.currency }} </td> </tr> {% endfor %}
1.7.25.1.21. url
請求書のリソース URL を返します。
{{ "Show" | link_to: invoice.url }}
1.7.25.1.22. pdf_url
請求書の PDF のリソース URL を返します。
{{ "PDF" | link_to: invoice.pdf_url }}
1.7.26. Janrain ドロップ (up)
1.7.26.1. メソッド
1.7.26.1.1. login_url
1.7.26.1.2. user_identified?
1.7.26.1.3. session_url
1.7.26.1.4. relying_party
1.7.27. LineItem ドロップ (up)
1.7.27.1. メソッド
1.7.27.1.1. errors
送付に失敗した後にこのモデルのフォームがレンダリングされると、発生したエラーを返します。
{{ line_item.errors.name | inline_errors }}
1.7.27.1.2. name
{% for line_item in invoice.line_items %} <tr class="line_item {% cycle 'odd', 'even' %}"> <th>{{ line_item.name }}</th> <td>{{ line_item.description }}</td> <td>{{ line_item.quantity }}</td> <td>{{ line_item.cost }}</td> </tr> {% endfor %}
1.7.27.1.3. description
1.7.27.1.4. quantity
1.7.27.1.5. cost
1.7.28. Message ドロップ (up)
1.7.28.1. メソッド
1.7.28.1.1. errors
送付に失敗した後にこのモデルのフォームがレンダリングされると、発生したエラーを返します。
{{ message.errors.name | inline_errors }}
1.7.28.1.2. id
メッセージの ID を返します。
1.7.28.1.3. subject
件名がない場合は、ボディーの一部または (no subject)
の文字列のいずれかが返されます。
1.7.28.1.4. ボディー
メッセージのボディー
1.7.28.1.5. created_at
作成日を返します。
{{ message.created_at | date: i18n.short_date }}
1.7.28.1.6. url
メッセージ詳細の URL で、受信トレイまたは送信トレイのどちらかを参照します。
1.7.28.1.7. state
read または unread のいずれか
1.7.28.1.8. sender
送信者の名前を返します。
1.7.28.1.9. 上記を以下のように変更します。
受取人の名前を返します。
1.7.28.1.10. recipients
1.7.29. Message ドロップ (up)
1.7.29.1. メソッド
1.7.29.1.1. type
メッセージの種類は以下のいずれかです。
- success (現在は使用されていません)
- info
- warning
- danger
1.7.29.1.2. text
1.7.30. Metric ドロップ (up)
1.7.30.1. メソッド
1.7.30.1.1. errors
送付に失敗した後にこのモデルのフォームがレンダリングされると、発生したエラーを返します。
{{ metric.errors.name | inline_errors }}
1.7.30.1.2. unit
メトリクスの単位を返します。
This metric is measured in {{ metric.unit | pluralize }}
1.7.30.1.3. description
メトリクスの説明を返します。
1.7.30.1.4. name
メトリクスの名前を返します。
<h4>Metric {{ metric.name }}</h4> <p>{{ metric.description }}</p>
1.7.30.1.5. system_name
このメトリクスのシステム名を返します。
<h4>Metric {{ metric.name }}</h4> <p>{{ metric.system_name }}</p>
1.7.30.1.6. usage_limits
メトリクスの使用限度を返します。
{% if metric.usage_limits.size > 0 %} <p>Usage limits of the metric</p> <ul> {% for usage_limit in metric.usage_limits %} <li>{{ usage_limit.period }} : {{ usage_limit.value }}</li> {% endfor %} </ul> {% else %} <p>This metric has no usage limits</p> {% endif %}
1.7.30.1.7. pricing_rules
メトリクスの課金ルールを返します。
{% if metric.pricing_rules.size > 0 %} <p>Pricing rules of the metric</p> <ul> {% for pricing_rule in metric.pricing_rules %} <li>{{ pricing_rule.cost_per_unit }}</li> {% endfor %} </ul> {% else %} <p>This metric has no pricing rules</p> {% endif %}
1.7.30.1.8. has_parent
1.7.31. Page ドロップ (up)
1.7.31.1. メソッド
1.7.31.1.1. errors
送付に失敗した後にこのモデルのフォームがレンダリングされると、発生したエラーを返します。
{{ page.errors.name | inline_errors }}
1.7.31.1.2. title
ページのタイトルを返します。
<title>{{ page.title }}</title>
1.7.31.1.3. system_name
ページのシステム名を返します。
{% if page.system_name == 'my_page' %} {% include 'custom_header' %} {% endif %}
1.7.32. Page ドロップ (up)
1.7.32.1. メソッド
1.7.32.1.1. errors
送付に失敗した後にこのモデルのフォームがレンダリングされると、発生したエラーを返します。
{{ page.errors.name | inline_errors }}
1.7.32.1.2. title
1.7.32.1.3. kind
1.7.32.1.4. url
1.7.32.1.5. description
1.7.33. Pagination ドロップ (up)
1.7.33.1. メソッド
1.7.33.1.1. page_size
全 1 ページに記載される項目数
{% for part in pagination.parts %} {% if part.is_link %} {% case part.rel %} {% when 'previous' %} {% assign css_class = 'previous_page' %} {% when 'next' %} {% assign css_class = 'next_page' %} {% else %} {% assign css_class = '' %} {% endcase %} <a class="{{ css_class }}" rel="{{ part.rel}}" href="{{ part.url }}">{{ part.title }}</a> {% else %} {% case part.rel %} {% when 'current' %} <em class="current">{{ part.title }}</em> {% when 'gap' %} … {% else %} {{ part.title }} {% endcase %} {% endif %} {% endfor %} <!-- Outputs: ============================================ <a class="previous_page" rel="prev" href="?page=7">← Previous</a> <a rel="start" href="?page=1">1</a> <a href="?page=2">2</a> <a href="?page=3">3</a> <a href="?page=4">4</a> <a href="?page=5">5</a> <a href="?page=6">6</a> <a rel="prev" href="?page=7">7</a> <em class="current">8</em> <a rel="next" href="?page=9">9</a> <a href="?page=10">10</a> <a href="?page=11">11</a> <a href="?page=12">12</a> … <a href="?page=267">267</a> <a href="?page=268">268</a> <a class="next_page" rel="next" href="?page=9">Next →</a> ======================================= -->
1.7.33.1.2. current_page
現在選択されているページ数
1.7.33.1.3. current_offset
これまでスキップした項目
1.7.33.1.4. pages
総ページ数
1.7.33.1.5. items
全ページを合わせた総項目数
1.7.33.1.6. previous
前のページ数または空
1.7.33.1.7. next
次のページ数または空
1.7.33.1.8. parts
ユーザーフレンドリーなページネーションをレンダリングするのに役立つ要素。詳細は、[[part-drop[part drop] を参照してください。
1.7.34. Part ドロップ (up)
1.7.34.1. メソッド
1.7.34.1.1. url
1.7.34.1.2. rel
1.7.34.1.3. current?
1.7.34.1.4. is_link
1.7.34.1.5. title
1.7.34.1.6. to_s
1.7.35. PaymentGateway ドロップ (up)
1.7.35.1. メソッド
1.7.35.1.1. braintree_blue?
現在の支払ゲートウェイが braintreepayments.com かどうかを返します。
1.7.35.1.2. authorize_net?
現在の支払ゲートウェイが authorize.Net かどうかを返します。
1.7.35.1.3. type
この支払ゲートウェイの種類を返します。
1.7.36. PaymentTransaction ドロップ (up)
1.7.36.1. メソッド
1.7.36.1.1. errors
送付に失敗した後にこのモデルのフォームがレンダリングされると、発生したエラーを返します。
{{ payment_transaction.errors.name | inline_errors }}
1.7.36.1.2. currency
通貨を返します。
{% for payment_transaction in invoice.payment_transactions %} <tr> <td> {% if payment_transaction.success? %} Success {% else %} Failure {% endif %} </td> <td> {{ payment_transaction.created_at }} </td> <td> {{ payment_transaction.reference }} </td> <td> {{ payment_transaction.message }} </td> <td> {{ payment_transaction.amount }} {{ payment_transaction.currency }} </td> </tr> {% endfor %}
1.7.36.1.3. amount
金額を返します。
1.7.36.1.4. created_at
作成日を返します。
1.7.36.1.5. success?
成功した場合は true を返します。
1.7.36.1.6. message
トランザクションのメッセージを返します。
1.7.36.1.7. reference
リファレンスを返します。
1.7.37. PlanFeature ドロップ (up)
1.7.37.1. メソッド
1.7.37.1.1. errors
送付に失敗した後にこのモデルのフォームがレンダリングされると、発生したエラーを返します。
{{ plan_feature.errors.name | inline_errors }}
1.7.37.1.2. name
機能の名前を返します。
<h2>Feature {{ feature.name }}</h2>
1.7.37.1.3. description
機能の説明を返します。
1.7.37.1.4. has_description?
機能に説明があるかどうかを返します。
{% if feature.has_description? %} {{ feature.description }} {% else %} This feature has no description. {% endif %}
1.7.37.1.5. enabled?
1.7.38. Post ドロップ (up)
1.7.38.1. メソッド
1.7.38.1.1. errors
送付に失敗した後にこのモデルのフォームがレンダリングされると、発生したエラーを返します。
{{ post.errors.name | inline_errors }}
1.7.38.1.2. body
投稿のテキスト
1.7.38.1.3. topic
すべての投稿は [[topic-drop[topic] に属します。
1.7.38.1.4. created_at
この投稿が作成された日付
{{ post.created_at | date: i18n.short_date }}
1.7.38.1.5. url
トピック内のこの投稿の URL
1.7.39. Post ドロップ (up)
1.7.39.1. メソッド
1.7.39.1.1. errors
送付に失敗した後にこのモデルのフォームがレンダリングされると、発生したエラーを返します。
{{ post.errors.name | inline_errors }}
1.7.39.1.2. title
1.7.39.1.3. kind
1.7.39.1.4. url
1.7.39.1.5. description
1.7.40. PricingRule ドロップ (up)
1.7.40.1. メソッド
1.7.40.1.1. cost_per_unit
課金ルールの単価を返します (例: Liquid の PricingRule ドロップを使用する)。
<h2>Pricing rule</h2> Min value {{ pricing_rule.min }} Max value {{ pricing_rule.max }} Cost per unit {{ pricing_rule.cost_per_unit }}
1.7.40.1.2. min
課金ルールの最小値を返します。
1.7.40.1.3. max
課金ルールの最大値を返します。
1.7.40.1.4. プラン
課金ルールのプランを返します。
1.7.41. Provider ドロップ (up)
1.7.41.1. メソッド
1.7.41.1.1. name
ご自分の組織の名前を返します。
Domain {{ provider.domain }} {% if provider.multiple_applications_allowed? %} <p>Applications</p> <ul> {% for app in account.applications %} <li>{{ app.name }}</li> {% endfor %} </ul> {% else %} Application {{ account.applications.first.name }} {% endif %} For general questions contact us at {{ provider.support_email }}, for invoice or payment related questions contact us at {{ provider.finance_support_email }}
1.7.41.1.2. payment_gateway
アカウントに関連付けられた支払いゲートウェイを返します。
1.7.41.1.3. domain
デベロッパーポータルのドメイン
1.7.41.1.4. timezone
使用しているタイムゾーンを返します。/p/admin/account/edit[administration dashboard] で変更することができます。
1.7.41.1.5. support_email
アカウントのサポートメール
1.7.41.1.6. finance_support_email
アカウントの経理サポートメール
1.7.41.1.7. telephone_number
アカウントの電話番号を返します。
1.7.41.1.8. multiple_applications_allowed?
開発者が個別のキーや統計情報などを持つ複数のアプリケーションを持つことができる場合は True。3scale のプランによります。
{% if provider.multiple_applications_allowed? %} <p>Applications</p> <ul> {% for app in account.applications %} <li>{{ app.name }}</li> {% endfor %} </ul> {% else %} Application {{ account.applications.first.name }} {% endif %}
1.7.41.1.9. logo_url
ロゴの URL を返します。
1.7.41.1.10. multiple_services_allowed?
3scale のプランで複数の API を個別の サービス として管理することができる場合は True。
{% if provider.multiple_services_allowed? %} {% for service in provider.services %} Service {{ service.name }} is available. {% endfor %} {% endif %}
1.7.41.1.11. finance_allowed?
1.7.41.1.12. multiple_users_allowed?
開発者アカウントに複数のログインが関連付けられ (3scale のプランによります)、/p/admin/cms/switches[settings] でデベロッパーポータルでの表示が有効な場合は True
{% if provider.multiple_users_allowed? %} <ul id="subsubmenu"> <li> {{ 'Users' | link_to: urls.users }} </li> <li> {{ 'Sent invitations' | link_to: urls.invitations }} </li> </ul> {% endif %}
1.7.41.1.13. account_plans
公開されているすべてのアカウントプランを返します。
<p>We offer following account plans:</p> <ul> {% for plan in model.account_plans %} <li>{{ plan.name }} </li> {% endfor %} </ul>
1.7.41.1.14. services
定義されているすべてのサービスを返します。
<p>You can signup to any of our services!</p> <ul> {% for service in provider.services %} <li>{{ service.name }} <a href="/signup/service/{{ service.system_name }}">Signup!</a></li> {% endfor %}
1.7.41.1.15. signups_enabled?
管理ポータルの Usage ルールセクションで、サインアップを有効または無効にすることができます。
1.7.41.1.16. account_management_enabled?
Usage ルールセクションで、アカウント管理を有効または無効にすることができます。
1.7.42. ReferrerFilter ドロップ (up)
1.7.42.1. メソッド
1.7.42.1.1. id
1.7.42.1.2. value
1.7.42.1.3. delete_url
1.7.42.1.4. アプリケーション
1.7.43. Request ドロップ (up)
例: Liquid の Request ドロップを使用する
<h2>Request details</h2> URI {{ request.request_uri }} Host {{ request.host }} Host and port {{ request.host_with_port }}
1.7.43.1. メソッド
1.7.43.1.1. request_uri
リクエストの URI を返します。
1.7.43.1.2. host_with_port
リクエストのポートと共にホストを返します。
1.7.43.1.3. host
リクエスト URL のホスト部分を返します。
1.7.43.1.4. path
リクエスト URL のパス部分を返します。
{% if request.path == '/' %} Welcome on a landing page! {% else %} This just an ordinary page. {% endif %}
1.7.44. Role ドロップ (up)
1.7.44.1. メソッド
1.7.44.1.1. name
システムにとって重要なロールの内部名を返します。
1.7.44.1.2. description
ロールに関する説明文を返します。
1.7.45. Search ドロップ (up)
1.7.45.1. メソッド
1.7.45.1.1. errors
送付に失敗した後にこのモデルのフォームがレンダリングされると、発生したエラーを返します。
{{ search.errors.name | inline_errors }}
1.7.45.1.2. query
検索された文字列を返します。
<h3>{{ search.token }}</h3> <p>found on {{ search.total_found }} {{ search.item | pluralize }} </p> <dl> {% for result in search.results %} <dt> [ {{ result.kind | capitalize}} ] {{ result.title | link_to: result.url }} </dt> <dd> {{ result.description }} </dd> {% endfor %} </dl>
1.7.45.1.3. total_found
一致した要素の数を返します。
1.7.45.1.4. results
検索結果の配列を返します。
1.7.46. Service ドロップ (up)
1.7.46.1. メソッド
1.7.46.1.1. errors
送付に失敗した後にこのモデルのフォームがレンダリングされると、発生したエラーを返します。
{{ service.errors.name | inline_errors }}
1.7.46.1.2. name
サービスの名前を返します。
1.7.46.1.3. system_name
サービスのシステム名を返します。
{% case service.system_name %} {% when 'api' %} API is our newest service! {% when 'old' %} Unfortunately we dont allow more signups to our old service. {% endcase %}
1.7.46.1.4. description
サービスの説明を返します。
1.7.46.1.5. subscribed?
サービスがサブスライブされているかどうかを返します。
{% if service.subscribed? %} <p>You already subscribed this service.</p> {% endif %}
1.7.46.1.6. subscription
現在ログインしているユーザーがこのサービスにサブスライブしている場合は、サブスクリプション (ServiceContract
ドロップ) を返します。そうでなければ Nil を返します。
{% if service.subscription %} Your applications for service {{ service.name }} are: {% for app in service.subscription.applications %} {{ app.name }}<br/> {% endfor %} {% else %} <p>You are not subscribed to this.</p> {% endif %}
1.7.46.1.7. subscribable?
1.7.46.1.8. subscribe_url
1.7.46.1.9. application_plans
サービスの 公開されている アプリケーションプランを返します。
{% for service in model.services %} <h4>{{ service.name }} application plans:</h4> <dl> {% for application_plan in service.application_plans %} <dt>{{ application_plan.name }}</dt> <dd>{{ application_plan.system_name }}</dd> {% endfor %} </dl> {% endfor %}
1.7.46.1.10. service_plans
サービスの 公開されている サービスプランを返します。
<p>We offer following service plans:</p> <dl> {% for service in model.services %} {% for service_plan in service.service_plans %} <dt>{{ service_plan.name }}</dt> <dd>{{ service_plan.system_name }}</dd> {% endfor %} {% endfor %} </dl>
1.7.46.1.11. plans
サービスのアプリケーションプランを返します。
1.7.46.1.12. features
サービスの表示される機能を返します。
{% if service.features.size > 0 %} <p>{{ service.name }} has following features:</p> <ul> {% for feature in service.features %} <li>{{ feature.name }}</li> {% endfor %} </ul> {% else %} <p>Unfortunately, {{ service.name }} currently has no features.</p> {% endif %}
1.7.46.1.13. apps_identifier
設定されている認証モードに応じて、ID、API key、または OAuth 認証の Client ID のいずれかを返します。
{{ service.application_key_name }}
1.7.46.1.14. backend_version
1.7.46.1.15. referrer_filters_required?
1.7.46.1.16. metrics
サービスのメトリクスを返します。
<p>On {{ service.name }} we measure following metrics:</p> <ul> {% for metric in service.metrics %} <li>{{ metric.name }}</li> {% endfor %} </ul>
1.7.46.1.17. support_email
サービスのサポートメール
1.7.47. ServiceContract ドロップ (up)
1.7.47.1. メソッド
1.7.47.1.1. errors
送付に失敗した後にこのモデルのフォームがレンダリングされると、発生したエラーを返します。
{{ service_contract.errors.name | inline_errors }}
1.7.47.1.2. id
1.7.47.1.3. can_change_plan?
何らかの変更が可能な場合は true を返します。
1.7.47.1.4. trial?
契約がまだトライアル期間中であれば true を返します。
注記: プランのトライアル期間の長さを変更しても、既存の契約に影響を及ぼしません。
1.7.47.1.5. live?
1.7.47.1.6. state
状態は以下の 3 つのいずれかです。
- pending - live - suspended
1.7.47.1.7. remaining_trial_period_days
トライアル期間の残り日数
1.7.47.1.8. プラン
契約のプランを返します。
1.7.47.1.9. plan_change_permission_name
許可されるアクションの名前を返します。
1.7.47.1.10. plan_change_permission_warning
許可されるアクションの警告メッセンジャーを返します。
1.7.47.1.11. contract
1.7.47.1.12. name
1.7.47.1.13. system_name
1.7.47.1.14. change_plan_url
1.7.47.1.15. サービス
1.7.47.1.16. applications
1.7.47.1.17. can
対象のサブスクリプションの現在のユーザーの特定権限を公開します。
{% if subscription.can.change_plan? %} ... {% endif %}
1.7.48. ServicePlan ドロップ (up)
1.7.48.1. メソッド
1.7.48.1.1. selected?
プランが選択されているかどうかを返します。
{% if plan.selected? %} <p>You will signup to {{ plan.name }}</p> {% endif %}
1.7.48.1.2. bought?
プランが購入されているかどうかを返します。
{% if plan.bought? %} <p>You are on this plan already!</p> {% endif %}
1.7.48.1.3. features
プランの表示される機能を返します。
{% if plan == my_free_plan %} <p>These plans are the same.</p> {% else %} <p>These plans are not the same.</p> {% endif %}
1.7.48.1.4. setup_fee
プランの開設費を返します。
1.7.48.1.5. name
プランの名前を返します。
<h2>We offer you a new {{ plan.name }} plan!</h2>
1.7.48.1.6. system_name
プランのシステム名を返します。
{% for plan in available_plans %} {% if plan.system_name == 'my_free_plan' %} <p>You will buy our only free plan!</p> {% endif %} {% endfor %}
1.7.48.1.7. id
プランの ID を返します。
1.7.48.1.8. free?
プランは有料でなければ無料です (paid? メソッドを参照)。
{% if plan.free? %} <p>This plan is free of charge.</p> {% else %} <p>Plan costs</p> Setup fee {{ plan.setup_fee }} Flat cost {{ plan.flat_cost }} {% endif %}
1.7.48.1.9. paid?
固定費または開設費がゼロではない場合や、何らかの課金ルールが設定されている場合、プランは有料です。
{% if plan.paid? %} <p>this plan is a paid one.</p> {% else %} <p>this plan is a free one.</p> {% endif %}
1.7.48.1.10. approval_required?
プランに承認が必要かどうかを返します。
{% if plan.approval_required? %} <p>This plan requires approval.</p> {% endif %}
1.7.48.1.11. flat_cost
プランの月額固定費を返します。
1.7.48.1.12. サービス
例: Liquid の ServicePlan ドロップを使用する
<p class="notice">The examples for plan drop apply here</p> Service of this plan {{ plan.service.name }}
1.7.49. TimeZone ドロップ (up)
1.7.49.1. メソッド
1.7.49.1.1. full_name
1.7.49.1.2. to_str
1.7.50. Today ドロップ (up)
1.7.50.1. メソッド
1.7.50.1.1. month
現在の月を返します (1 - 12)。
1.7.50.1.2. day
現在の日付を返します (1 - 31)。
1.7.50.1.3. year
現在の年号を返します (例: 著作権の年号を動的に作成する)。
©{{ today.year }}
1.7.50.1.4. beginning_of_month
現在の月の開始日を返します。
This month began on {{ today.beginning_of_month | date: '%A' }}
1.7.51. Topic ドロップ (up)
1.7.51.1. メソッド
1.7.51.1.1. errors
送付に失敗した後にこのモデルのフォームがレンダリングされると、発生したエラーを返します。
{{ topic.errors.name | inline_errors }}
1.7.51.1.2. title
1.7.51.1.3. kind
1.7.51.1.4. url
1.7.51.1.5. description
1.7.52. Topic ドロップ (up)
1.7.52.1. メソッド
1.7.52.1.1. errors
送付に失敗した後にこのモデルのフォームがレンダリングされると、発生したエラーを返します。
{{ topic.errors.name | inline_errors }}
1.7.52.1.2. title
トピックの名前。スレッドへの最初の投稿が投稿された時点で送信されます。
1.7.52.1.3. url
1.7.53. Url ドロップ (up)
1.7.53.1. メソッド
1.7.53.1.1. to_s
1.7.53.1.2. to_str
1.7.53.1.3. title
1.7.53.1.4. current_or_subpath?
現在のページのパスがこれと同じか、またはその直接のサブパスであれば (ID により拡張) True。たとえば {{ urls.outbox }}
の場合、以下のパスは true を返します。
- /admin/sent/messages/received
- /admin/sent/messages/received/42
しかし、以下のパスは true を返しません。
- /admin/sent/messsages/new
- /admin/sent/messsages/longer/subpath
#active? および #current? も参照してください。
1.7.53.1.5. current?
URL のパスが現在のパスと同じであれば True。パラメーターおよびその他のコンポーネントは考慮されません。#active? も参照してください。
{% assign url = urls.messages_inbox %} <!-- => http://awesome.3scale.net/admin/messages/sent --> <!-- Current page: http://awesome.3scale.net/admin/messages/sent?unread=1 --> {{ url.current? }} => true <!-- Current page: http://awesome.3scale.net/admin/messages --> {{ url.current? }} => false
1.7.53.1.6. active?
現在のページがこの URL と同じメニュー構造にある場合は True。#current? も参照してください。
{% assign url = urls.messages_inbox %} <!-- => http://awesome.3scale.net/admin/messages/sent --> <!-- Current page: http://awesome.3scale.net/admin/messages --> {{ url.active? }} => true <!-- Current page: http://awesome.3scale.net/admin/messages/trash --> {{ url.active? }} => true <!-- Current page: http://awesome.3scale.net/admin/stats --> {{ url.active? }} => false
1.7.54. Urls ドロップ (up)
1.7.54.1. メソッド
1.7.54.1.1. provider
1.7.54.1.2. cas_login
<a href="{{ urls.signup }}">signup here</a> <a href="{{ urls.service_subscription }}">subscribe to a service here</a>
1.7.54.1.3. new_application
1.7.54.1.4. signup
サインアップページの URL。すべてのユーザーがアクセス可能です。
<a href="{{ urls.signup }}?{{ service_plan | param_filter }}&{{ app_plan | param_filter }}" >Signup Now!</a>
1.7.54.1.5. search
すべての検索リクエストが送信されるべき URL
<form action="{{ urls.search }}" method="get"> </form>
1.7.54.1.6. login
1.7.54.1.7. logout
1.7.54.1.8. forgot_password
1.7.54.1.9. service_subscription
サービスのサブスクリプションページの URL。対象はログインしているユーザーのみ。
<a href="{{ urls.service_subscription }}?{{ service_plan | param_filter }}" > Subscribe to service {{ service.name }} </a>
1.7.54.1.10. compose_message
開発者が内部メッセージングシステムを介してプロバイダーに連絡することができるページの URL
1.7.54.1.11. messages_outbox
開発者が送信したメッセージのリストの URL
1.7.54.1.12. messages_trash
1.7.54.1.13. empty_messages_trash
1.7.54.1.14. credit_card_terms
1.7.54.1.15. credit_card_privacy
1.7.54.1.16. credit_card_refunds
1.7.54.1.17. users
1.7.54.1.18. personal_details
URL またはユーザーのアカウント管理が無効な場合は Nil (Usage ルールを確認してください)
1.7.54.1.19. access_details
API キーおよびその他の認証情報が含まれるページ。認証方式によって異なります。
1.7.54.1.20. payment_details
1.7.54.1.21. new_invitation
新規ユーザーを招待するページ
1.7.54.1.22. invitations
送信したすべての招待状のリスト
1.7.54.1.23. dashboard
1.7.54.1.24. applications
1.7.54.1.25. api_access_details
1.7.54.1.26. services
1.7.54.1.27. messages_inbox
受信したメッセージのリストの URL
1.7.54.1.28. stats
1.7.54.1.29. account_overview
1.7.54.1.30. account_plans
1.7.54.1.31. invoices
1.7.55. UsageLimit ドロップ (up)
例: Liquid の UsageLimit ドロップを使用する
You cannot do more than {{ limit.value }} {{ limit.metric.unit }}s per {{ limit.period }}
1.7.55.1. メソッド
1.7.55.1.1. period
使用限度の期間を返します。
1.7.55.1.2. メトリクス
通常は hits
ですが、任意のカスタムメソッドを設定することができます。
1.7.55.1.3. value
使用限度の値を返します。
1.7.56. User ドロップ (up)
<h2>User {{ user.display_name }}</h2> Account {{ user.account.name }} Username {{ user.username }} Email {{ user.email }} Website {{ user.website }}
1.7.56.1. メソッド
1.7.56.1.1. errors
送付に失敗した後にこのモデルのフォームがレンダリングされると、発生したエラーを返します。
{{ user.errors.name | inline_errors }}
1.7.56.1.2. admin?
ユーザーが管理者かどうかを返します。
{% if user.admin? %} <p>You are an admin of your account.</p> {% endif %}
1.7.56.1.3. username
ユーザーのユーザー名を返します (html エスケープ)。
1.7.56.1.4. アカウント
ユーザーのアカウントを返します。
1.7.56.1.5. name
ユーザーの苗字および名前を返します。
1.7.56.1.6. email
ユーザーのメールアドレスを返します。
1.7.56.1.7. password_required?
このメソッドは、組み込みのデベロッパーポータルの認証メカニズムを使用するユーザーの場合は true
を返し、Janrain、CAS、またはその他のシングルサインオンメソッドで認証されるユーザーの場合は false
を返します。
{% if user.password_required? %} {% endif %}
1.7.56.1.8. sections
ユーザーがアクセスすることのできるセクションのリストを返します。
{% if user.sections.size > 0 %} <p>You can access following sections of our portal:</p> <ul> {% for section in user.sections %} <li>{{ section }}</li> {% endfor %} </ul> {% endif %}
1.7.56.1.9. role
ユーザーのロールを返します。
1.7.56.1.10. roles_collection
ユーザーが利用可能なロールのリストを返します。
{% for role in user.roles_collection %} <li> <label for="user_role_{{ role.key }}"> {{ role.text }} </label> </li> {% endfor %}
1.7.56.1.11. url
ユーザーのリソース URL を返します。
{{ 'Delete' | delete_button: user.url }}
1.7.56.1.12. edit_url
ユーザーを編集するための URL を返します。
{{ 'Edit' | link_to: user.edit_url, title: 'Edit', class: 'action edit' }}
1.7.56.1.13. can
パーミッションメソッドへのアクセス権限を付与します。
{% if user.can.be_managed? %} <!-- do something --> {% endif %}
1.7.56.1.14. extra_fields
このユーザーの非表示ではない追加フィールドを値と共に返します (例: すべての追加フィールドを表示する)。
{% for field in user.extra_fields %} {{ field.label }}: {{ field.value }} {% endfor %}
1.7.56.1.15. fields
このユーザーのすべてのフィールドを値と共に返します (例: すべてのフィールドを表示する)。
{% for field in user.fields %} {{ field.label }}: {{ field.value }} {% endfor %}
1.7.56.1.16. builtin_fields
このユーザーのすべての組み込みフィールドを値と共に返します。
1.8. タグ (up)
1.8.1. braintree_customer_form タグ (up)
Braintree Blue 支払いゲートウェイに必要なデータを入力するためのフォームをレンダリングします。
1.8.2. csrf タグ (up)
クロスサイトリクエストフォージェリーのメタタグをレンダリングします。
Example: Liquid の csrf タグを使用する
<head> {% csrf %} </head>
1.8.3. content タグ (up)
ページのボディーをレンダリングします。このタグはレイアウト内でのみ使用します。
1.8.4. content_for タグ (up)
1.8.5. debug タグ (up)
テンプレートで利用可能なすべての Liquid 変数を HTML コメントに出力します。 公開されているテンプレートから このタグを削除する ことを推奨します。
``{% debug:help %}``
1.8.6. email タグ (up)
email
タグにより送信メールのヘッダーをカスタマイズすることができます。なお、このタグはメールテンプレート内でのみ利用可能です。
cc
や subject
などの便利なサブタグがいくつかあり (下表を参照)、操作を簡素化することができますが、header
サブタグを使用してメッセージに任意の SMTP ヘッダーを設定することもできます。
サブタグ | 説明 | 例 |
subject | 動的な件名 | {% subject = 'Greetings from Example company!' %} |
cc | カーボンコピー | {% cc = 'boss@example.com' %} |
bcc | ブラインドカーボンコピー | {% bcc = 'all@example.com' %} |
from | 実際の送信者 | {% from = 'system@example.com' %} |
reply-to | {% reply-to = 'support@example.com' %} | |
header | カスタム SMTP ヘッダー | {% header 'X-SMTP-Group' = 'Important' %} |
do_not_send | メールの破棄 | {% do_not_send %} |
例: 条件付きブラインドカーボンコピー
{% email %} {% if plan.system_name == 'enterprise' %} {% bcc 'marketing@world-domination.org' %} {% endif%} {% endemail %}
例: メールを一切無効にする
{% email %} {% do_not_send %} {% endemail %}
例: サインアップメールのフィルター
{% email %} {% if plan.system == 'enterprise' %} {% subject = 'Greetings from Example company!' %} {% reply-to = 'support@example.com' %} {% else %} {% do_not_send %} {% endif %} {% endemail %}
1.8.7. flash タグ (up)
システムの情報やエラーメッセージをレンダリングします。
非推奨: このタグは非推奨になりました。代わりに Flash ドロップを使用してください。
例: Liquid の flash タグを使用する
{% flash %}
1.8.8. footer タグ (up)
フッターの html スニペットをレンダリングします。
非推奨: このタグは非推奨になりました。代わりに CMS のパーシャルを使用してください。
1.8.9. form タグ (up)
フォームの名前に応じて、アクションおよびクラス属性を指定して form タグをレンダリングします。サポートされるフォームは以下のとおりです。
フォーム | 許可されるフィールド名 | スパム対策 | 注記 |
application.create |
| いいえ | |
application.update |
| いいえ | |
signup |
| はい |
|
例: アプリケーションを作成するためのフォーム
{% form 'application.create', application %} {{ application.errors.name | inline_errors }} {% endform %}
1.8.10. latest_forum_posts タグ (up)
最新のフォーラムの投稿を集めた HTML テーブル
非推奨: このタグの代わりに forum
ドロップを使用してください。
例: Liquid の latest_forum_posts タグを使用する
{% latest_forum_posts %}
1.8.11. latest_messages タグ (up)
ユーザーへの最新のメッセージが含まれる html スニペットをレンダリングします。
例: Liquid の latest_messages タグを使用する
{% latest_messages %}
1.8.12. logo タグ (up)
ロゴをレンダリングします。
非推奨: このタグは非推奨になりました。代わりに {{ provider.logo_url }} を使用してください。
例: Liquid の menu タグを使用する
{% logo %}
1.8.13. menu タグ (up)
非推奨: このタグは非推奨になりました。代わりに{% include "menu" %}を使用してください
1.8.14. oldfooter タグ (up)
フッターの html スニペットをレンダリングします。
非推奨: このタグは非推奨になりました。代わりに CMS のパーシャルを使用してください。
1.8.15. plan_widget タグ (up)
アプリケーションプランの見直しや変更を行うためのウィジェットが含まれます。
{% if application.can_change_plan? %} <a href="#choose-plan-{{ application.id }}" id="choose-plan-{{application.id}}"> Review/Change </a> {% plan_widget application %} {% endif %}
1.8.16. portlet タグ (up)
このタグにはシステム名によるポートレットが含まれます。
1.8.17. submenu タグ (up)
ログインしているユーザーのサブメニューの html スニペットをレンダリングします。
非推奨: このタグは非推奨になりました。代わりに submenu のパーシャルを使用してください。
例: Liquid の submenu タグを使用する
{% submenu %}
1.8.18. 3scale_essentials タグ (up)
1.8.19. user_widget タグ (up)
ユーザーのウィジェット html スニペットをレンダリングします。
非推奨: このタグは非推奨になりました。代わりに CMS のパーシャルを使用してください。
例: Liquid の user_widget タグを使用する
{% user_widget %} <p class="notice">If you are logged in you see profile related links above.</p> <p class="notice">If you are not login you are invited to login or signup.</p>
1.9. フィルター (up)
1.9.1. FormHelpers フィルター (up)
1.9.1.1. error_class フィルター
引数が空でなければエラークラスを出力します (例: error_class を使用してエラークラスの出力を表示する)。
1.9.1.2. inline_errors フィルター
エラーフィールドをパラグラフにインラインで出力します (例: inline_errors を使用してエラーをインラインで表示する)。
{{ form.errors.description | inline_errors }}
1.9.2. ParamFilter フィルター (up)
1.9.2.1. to_param フィルター
可能であれば、指定されたドロップを URL パラメーターに変換します。例: Liquid の to_param フィルターを使用する
<h2>Signup to a service</h2> <a href="{{ urls.signup }}?{{ service | to_param }}">Signup to {{ service.name }}</a>
1.9.3. Common フィルター (up)
1.9.3.1. group_by フィルター
何らかのキーでコレクションをグループ化します (例: サービスでアプリケーションをグループ化する)。
{% assign grouped = applications | group_by: 'service' %} {% for group in grouped %} Service: {{ group[0 }} {% for app in group[1] %} Application: {{ app.name }} {% endfor %} {% endfor %}
1.9.3.2. any フィルター
コレクションのいずれかの文字列がパラメーターと一致する場合は True (例: 現在のアカウントに保留中のアプリケーションはあるか)
{% assign has_pending_apps = current_account.applications | map: 'state' | any: 'live' %}
1.9.3.3. stylesheet_link_tag フィルター
Stylesheet リンク
1.9.3.4. javascript_include_tag フィルター
Javascript インクルードタグ
1.9.3.5. image_tag フィルター
パラメーターを src
属性として使用してタグを出力します。
{{ 'http://example.com/cool.gif' | image_tag }} ## =>
1.9.3.6. mail_to フィルター
メールアドレスを mailto リンクに変換します。
{{ 'me@there.is' | mail_to }} ## => <a href="mailto:me@there.is">me@there.is</a>
1.9.3.7. html_safe フィルター
コンテンツを HTML セーフと識別し、エスケープされないようにします。
1.9.3.8. pluralize フィルター
単語を複数形に変換します。
1.9.3.9. delete_button フィルター
URL 上に存在するリソースを削除するボタンを生成します。1 番目のパラメーターは URL で、2 番目のパラメーターはタイトルです。3 番目のパラメーターとして、さらに HTML タグ属性を追加することもできます。
{{ 'Delete Message' | delete_button: message.url, class: 'my-button' }}
1.9.3.10. delete_button_ajax フィルター
AJAX を使用して、URL 上に存在するリソースを削除するボタンを生成します。1 番目のパラメーターは URL で、2 番目のパラメーターはタイトルです。
{{ 'Delete Message' | delete_button_ajax: message.url }}
1.9.3.11. update_button フィルター
URL 上に存在するリソースを更新する (HTTP PUT リクエスト) ボタンを生成します。1 番目のパラメーターは URL で、2 番目のパラメーターはタイトルです。3 番目のパラメーターとして、さらに HTML タグ属性を追加することもできます。
{{ 'Resend' | update_button: message.url, class: 'my-button' }}
1.9.3.12. create_button フィルター
URL 上に存在するリソースを作成するボタンを生成します。1 番目のパラメーターは URL で、2 番目のパラメーターはタイトルです。
{{ 'Create Message' | create_button: message.url }}
1.9.3.13. create_button_ajax フィルター
1.9.3.14. regenerate_oauth_secret_button フィルター
1.9.3.15. link_to フィルター
指定されたテキストからリンクを作成します。
{{ "See your App keys" | link_to:'/my-app-keys' }}