私は単純なアイテムモデルと "/ items"と "/items.json"を持っています。しかし、私はAPI呼び出しで "/items.json?skuid=123"のような検索パラメータを追加したいので、返されたjsonはskuid = 123の項目しか持たない。Railsアプリ - API取得リクエストでクエリパラメータを追加する方法は?
してくださいアドバイスを
class ItemsController < ApplicationController
before_action :set_item, only: [:show, :edit, :update, :destroy]
# GET /items
# GET /items.json
def index
Rails.logger.debug("index.params=#{params}")
@items = Item.all(params.slice(*Item.attribute_names))
end
しかし、エラーが発生しました引数の
間違った番号(1を与えられたが、0を予想):
は、私は、次の方法を試してみました。
私はあなたが最初に 'skuid'をチェックしなければならないと思っていますparamsはprasentですか、そうではありません' where''このように 'where' caluse' item.where( "skuid =?"、params [:skuid]) ' – uzaif
ありがとう。部分的な成功。 "/items.json?skuid=123"はあなたの提案に感謝します。 skuidが "123"だったアイテムが返されましたが、 "/items.json"が空のjsonを返すようになりました。以前はデータベースからすべての項目を返すことがありました。アドバイスできますか? – Pushkar
検索項目を処理するブロックを使用すると完了しました – uzaif