2017-08-12 5 views
1

Railsアプリケーションのマスターリストから会社の在庫にアイテムを追加しています。通常、同じアイテムを複数回転記すると、より多くのアイテムが作成されます。明らかに、私はそれを単一のインスタンスに制限することができます。アイテムのインスタンスを1つしか持てない場合のRESTfulインターフェイス

私はそれを在庫に切り替えるという単なるアクションとして考えています。あなたはいつも投稿していて、存在する場合はそのアイテムをユーザーの在庫から削除し、存在しなければ追加します。

このように扱うのは合理的ですか?または、より良い方法(明らかに投稿/削除を行っています)または他の方法がありますか?

+0

データベース構造を表示できますか。 – xiaocui

答えて

0

これが最善の道何かのように、(またはアプリケーションの構造に合った似たような)で定義されることができます

PUT /users/:used_id/items/:item_id/inventory 
DELETE /users/:used_id/items/:item_id/inventory 

どちらのルートが追加パラメータを受け入れる必要があります。 PUTは、アイテムがまだ存在しない場合はそのアイテムをユーザーインベントリに追加し、そうであればエラーを返します。逆に、DELETEは、存在する場合はユーザーインベントリからアイテムを削除し、そうでない場合はエラーを返す必要があります。

関連する問題