Fix query for multi categories and tags
This commit is contained in:
		
							parent
							
								
									157935e7eb
								
							
						
					
					
						commit
						ef2a32be4c
					
				|  | @ -71,12 +71,12 @@ class PagesController < ApplicationController | ||||||
|     else |     else | ||||||
|       module_app = ModuleApp.first(:conditions => {:key => params[:app_name]}) |       module_app = ModuleApp.first(:conditions => {:key => params[:app_name]}) | ||||||
|       if !params[:category_id].blank? && !params[:tag_id].blank? |       if !params[:category_id].blank? && !params[:tag_id].blank? | ||||||
|         @item = Item.first(:conditions => {:module_app_id => module_app.id, :app_frontend_url => params[:app_action], :category => params[:category_id], :tag => params[:tag_id]}) |         @item = Item.first(:conditions => {:module_app_id => module_app.id, :app_frontend_url => params[:app_action], :category.in => params[:category_id], :tag.in => params[:tag_id]}) | ||||||
|         @item = Item.first(:conditions => {:module_app_id => module_app.id, :app_frontend_url => params[:app_action], :category => params[:category_id], :tag => ''}) unless @item |         @item = Item.first(:conditions => {:module_app_id => module_app.id, :app_frontend_url => params[:app_action], :category.in => params[:category_id], :tag => ''}) unless @item | ||||||
|       elsif !params[:category_id].blank? |       elsif !params[:category_id].blank? | ||||||
|         @item = Item.where(module_app_id: module_app.id, app_frontend_url: params[:app_action], category: params[:category_id]).any_in(tag: [nil,'']).first |         @item = Item.where(module_app_id: module_app.id, app_frontend_url: params[:app_action], :category.in => params[:category_id]).any_in(tag: [nil,'']).first | ||||||
|       elsif !params[:tag_id].blank? |       elsif !params[:tag_id].blank? | ||||||
|         @item = Item.where(module_app_id: module_app.id, app_frontend_url: params[:app_action], tag: params[:tag_id]).any_in(category: [nil,'']).first |         @item = Item.where(module_app_id: module_app.id, app_frontend_url: params[:app_action], :tag.in => params[:tag_id]).any_in(category: [nil,'']).first | ||||||
|       end |       end | ||||||
|       @item = Item.find(params[:orig_page]) unless @item || params[:orig_page].blank? |       @item = Item.find(params[:orig_page]) unless @item || params[:orig_page].blank? | ||||||
|       @item = Item.where(module_app_id: module_app.id, app_frontend_url: params[:app_action]).all_of("tag" => {"$in" => [nil,'']},"category" => { "$in" => [nil,'']}).first unless @item |       @item = Item.where(module_app_id: module_app.id, app_frontend_url: params[:app_action]).all_of("tag" => {"$in" => [nil,'']},"category" => { "$in" => [nil,'']}).first unless @item | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue