Can any one help me to write this using rails3 active record query??
SQL-
SELECT DISTINCT `merchants`.id FROM `merchants`
INNER JOIN `merchant_status_assignments` ON `merchants`.`id` = `merchant_status_assignments`.`merchant_id`
INNER JOIN `merchant_statuses` ON `merchant_statuses`.`id` = `merchant_status_assignments`.`merchant_status_id`
INNER JOIN `merchant_status_assignments` `merchant_status_assignments_merchants` ON `merchant_status_assignments_merchants`.`merchant_id` = `merchants`.`id`
LEFT OUTER JOIN `favourite_merchants` ON `favourite_merchants`.`merchant_id` = `merchants`.`id` AND `favourite_merchants`.`customer_id` = 11
WHERE `merchants`.`status` = 1 AND `merchant_statuses`.`name` = 'new_merchant'
AND (merchants.site_id = 1)
I got the answer
controller
def
new_list @merchants = Merchant.front_search(current_site.id, params).includes(:favourite_merchant).where(customer_id => current_customer.id)
END
MODEL
def
self.front_search(site_id, params) merchants = merchants.joins(:merchant_statuses , :merchant_status_assignments) .where(“merchant_statuses.name” => params[:status]).select(‘DISTINCT merchants.*’)
END