問題タブ [grape-api]

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.

0 投票する
1 に答える
1419 参照

ruby-on-rails - リレーションシップによる has_many を持つブドウのエンティティ

グレープ ジェムを使用して REST API を追加しています。また、grape-entities ジェムも追加しました。私が必要としているのは、Product、Company、ManufactureCompany の 3 つのモデルのデータが 1 つの json ファイルに含まれていることです。

の関係product.rb:

products.rbファイル:

そしてentities.rb

エンティティはおそらく間違っています。has_many リレーションシップではただ言うことができるのを見ましたexpose :something, using: Entities::RelatedModelが、この場合、関連するモデルには product_id と company_id (および独自の ID) しかありません。ネット上で例を見つけることができませんでした。

0 投票する
2 に答える
2285 参照

ruby-on-rails - Grape::API – 定数 Base を自動ロードできません。/app/api/v1/base.rb で定義する必要があります (LoadError)

Unable to autoload constant BaseRails 4 で Grape::API を起動して実行するには、助けが必要putsです。私は何を間違っていますか?

アプリ/api/api.rb

アプリ/api/v1/base.rb

$ rspec スペック/api

仕様/api/users_spec.rb

私が使用しているバージョン

0 投票する
1 に答える
456 参照

ruby-on-rails - ブドウ rspec アップロード

グレープを使用して Rails アプリケーションで API を作成します。

ここで、すべての API をテストしたいと思います。私のAPIでは、サウンドをアップロードし、sound/:idを取得し、sound/:idを削除できます。

ポストサウンドのテストを書き始めましたが、私のテストでは常に「nil:NilClass の未定義のメソッド []」が返されます。

アップロード用の私のcurlコマンド(それは仕事です):

"-F data=" を使用する場合、問題は curl にあると思います。@ を削除する場合は、"=" の後に @ を追加する必要があります。nil:NilClass エラーの未定義のメソッド [] があります。

ここで私の質問は、テスト アップロード ファイルの @ をテストに追加する方法です。

私のテスト:

このテストは次のエラーを返します: undefined method [] for nil:NilClass error . どうすれば修正できるか知っている人はいますか?

ご協力いただきありがとうございます。

0 投票する
1 に答える
2354 参照

ruby-on-rails - Rails 4 で Grape カスタム検証を配置する場所

API に Grape を使用する Rails 4 プロジェクトがあります。Grape のドキュメントで説明されているように、いくつかのカスタム検証を行いたいと考えています。カスタム検証コード (lib ファイルなど) をどこに配置すればよいかを知りたいのですが、API ファイル内でそれを使用するために何かを含めるか要求する必要がありますか?

ドキュメントではクラスを作成するように指示されていますが、多くのカスタム検証を作成する必要がある場合、ファイル構造について混乱しています。

0 投票する
1 に答える
529 参照

ruby-on-rails - post/put でペイロードをグレープ エンティティにシリアル化する

Grape & Grape-Entity を使用して、データをエンティティに自動的にシリアル化する方法はありますか? すべての例で params[:var] を使用しているようです ( https://github.com/intridea/grapeから)

投稿されたエンティティがより複雑な場合 (新しい人 (名、姓、住所など) としましょう)、API が表すエンティティに自動的に変換する方法はありますか? 次のような使用法を探しています: