問題タブ [rabl]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ruby-on-rails - RABLテンプレートの子インスタンスへのアクセス
以下に示すようなRABLテンプレートがあります
テンプレートContact
のブロック内のオブジェクトにアクセスするにはどうすればよいですか?child
子インスタンスでいくつかの条件付きロジックを実行する必要があります。
ruby-on-rails - RABL テンプレートで ERB テンプレートをレンダリングする
JSON で長いメッセージを返したいシナリオがあります。文字列連結で書き出す代わりに、JSON にレンダリングできる erb テンプレートをまとめたいと思います。以下は私が現在試しているコードです:
このコードを最初に実行したときはすべてが期待どおりに機能しますが、2 回目に実行すると問題が発生します。これは、インスタンス変数が欠落していると表示されるためです (最初の実行時に生成され、キャッシュされたと想定します)。
未定義のメソッド _app_views_invitation_mailer_rsvp_sms_text_erb___2510743827238765954_2192068340 # (ActionView::Template::Error)
erb テンプレートを rabl にレンダリングするより良い方法はありますか?
ruby-on-rails-3 - Rabl の子の数を制限する
rabl でレンダリングされた JSON 応答の子の数を制限したい
Vehicle has_many の位置と位置は車両に属します。ここで、JSON の最後の位置のみを出力したいと考えています。
アイデアをいただければ幸いです。
ruby-on-rails - オブジェクトに存在する場合にのみ、RABL に属性をレンダリングさせるにはどうすればよいですか?
RESTful User モデルがあり、検索されている User オブジェクトが現在のユーザーではない場合に、Show JSON 応答に含まれる属性をフィルター処理しようとしています。
論理:
コントローラーで属性をフィルタリングすると、次のコードで MissingAttribiteError が返されます。
ユーザーコントローラー
users/show.json.rabl
オブジェクトに存在する場合にのみ、RABL に属性をレンダリングさせるにはどうすればよいですか?
ruby-on-rails - アプリケーション内から RABL API を使用するにはどうすればよいですか?
RABLを使用して API を公開する作業を行っています。ビューを公開するのは簡単ですが、自分のアプリケーションがそれらのビューを消費するという問題に遭遇しました。
たとえばhttp://example.com/api/articles
、記事の JSON 表現を生成する にエンドポイントがあるとします。
私のArticlesController#index
アクションでは、記事のリストを表示する (HAML) ビューをレンダリングしたいと考えています。のロジックを複製するのではなく、ArticlesApiController#index
単純にそのデータを使用したいと思います。つまり、/articles
「API エンドポイントからこのデータを取得してください」と言って、そのデータを HAML ビューに渡します。
どうやってやるの?それとも、これを行う方法が間違っていますか?
ruby-on-rails - rspec-rails + rablレンダリングビュー(レンダリングしたくない場合でも)?
私はrabl0.6.13、rspec-rails 2.10.1、およびrails3.2.6を使用しています。
私はコントローラーを個別に指定しようとしていますが、何らかの理由で、私のrablテンプレートは、コントローラーの仕様で使用するモックに対して、あらゆる種類の未定義のメソッド例外をスローします。私は使用していませんrender_views
。render_views
コントローラの仕様で指定しない限り、rspecはビューを処理しないと思いました。デバッガーを実行して、ブロックrspec-railsが挿入される前にrender_views?
評価されることを確認しました。false
他の誰かがこの問題に遭遇しましたか?
ruby-on-rails - Rabljsonコレクションの動的キー
多くの投稿があるユーザーモデルがあります。投稿をrablコレクションにレンダリングしようとしています。
jsonコレクションをレンダリングするためのデフォルトのrabl形式はです
{'posts': ['post':{}, 'post':{}]}
。私が達成しようとしているのは、たとえば「post」キーを動的な値のpost idに変更して、私の形式が次のようになるようにすること{'posts':[1:{}, 2:{} ]}
です。Rablの構成を試していましたが、私が見つけたのは、コレクションキーを削除する方法だけです。
ruby-on-rails-3 - ポリモーフィック モデルを使用して RABL パーシャルをレンダリングする
、または他のオブジェクトUser
が好きなデータモデルがあります。Project, Suggestion, Comment
モデルは正しく設定されており、子供likes/show.rabl
をサポートするだけであれば機能しますProject
suggestions/show, comments/show
ただし、によってはのパーシャルも使用できるようにしたいtarget_type
。
私はこれを試しましたが、うまくいきません:
私は得るundefined method target for <Rabl::Engine:0x69fb988>
。ただし、最初のケースではこのエラーは発生しません。何か案は?
ruby-on-rails - rablで2つのデータをjsonとして出力する方法
rabl は初めてで、次のように単一のハッシュで返される 2 つの異なる配列を使用してこれを行う方法がわかりません。
私のrablファイルでは、次のようなことをしたいと思います:
これを出力するには:
しかし、それは機能していないようです。これを機能させる方法はありますか?
どうも
ruby-on-rails - RABLによって生成されたビューで結果をフィルタリングする方法
私はRABLを使用してJSONをレンダリングしています。私はこれらのモデルを持っています:
Project
Task
User
「プロジェクトの表示」アクションにより、プロジェクト内のタスクのリストを含むプロジェクトの詳細がレンダリングされますが、ユーザーが表示を許可されているユーザーのみが表示されます。
これまでのところ、すべてのタスクをプロジェクトに追加しましたが、show.rabl
正常に機能しています。
特定の条件に答えるタスクのみをレンダリングするようにRABLに指示する方法はありますか?-私はすでにコントローラーにそのロジックを持っていますが、それをRABLに伝える方法がわかりません...
- アップデート -
「コード」セクションを追加し、プロジェクトオブジェクトを渡してから、表示されているタスクからハッシュを作成してレンダリングすることで、これを行う方法を考え出しました。これは機能しますが、非常に醜く、そもそもRABLを使用する目的に反します。おおまかに次のようになります。
私のユースケースはそれほどユニークではないと確信しています。それを行うためのより簡単な方法はありますか?