我在控制器中有以下索引方法
def index
if params.key?(:item)
@items = Item.get_items.where(item: params[:item])
else
@items = Item.get_items
end
型号:
Class Item < ApplicationRecord
has_many :item_resources, dependent: :destroy
has_many :resources, through: :item_resources
def self.get_items
includes(item_resources: {resource: :item_groups})
.order('item_resources.area ASC')
end
end
查看:
index.json.jbuilder
json.array! @items, partial: ‘items/item’, as: :item
_item.json.jbuilder
_item.json.jbuilder
json.something1 item.something1
json.item_layout do
json.template_key item.layout
json.merge! item.layout_config if item.layout_config.present?
end
json.something (item.item_details) do |item_detail|
json.partial! ‘item_details/item_detail’, item_detail: item_detail
end
我正在使用邮递员进行如下测试
http://localhost:3000/items?item=some_item
http://localhost:3000/items?item=some_item&item=other_item
以上工作正常
http://localhost:3000/items?item=some_item&item=
当我尝试以第二个参数值空白两次传递项目时,它不会返回第二个参数的结果,但会返回第一个参数的结果。
它使用IN ('some_item', '')