【发布时间】:2017-03-20 09:09:50
【问题描述】:
在一个项目中,我通过 ajax 实现了复选框过滤器。在我的控制器中,我有一个动作:
def casinos_filters
providers_from_categories = Provider.joins(:categories).where('categories.id = ?', params[:category_id])
providers = Casino.joins(:providers).where('providers.id = ?', params[:provider_id])
providers_from_categories.each do |provider|
@filtered_casinos = provider.casinos
end
casinos_list = []
casinos_list << @filtered_casinos if params[:category_id]
casinos_list << providers if params[:provider_id]
render json: { casinos: casinos_list.uniq }, status: 200
end
因此,我希望数组 casinos_list 包含赌场的对象。单击category 复选框,我得到了 json。但是当我单击下一个category 复选框时,json 没有以前的结果。我认为这是由于在操作中初始化了一个空数组。有没有办法只初始化一次数组,而不是每次调用ajax?谢谢。
【问题讨论】:
标签: ruby-on-rails arrays json ajax