我試圖將數據(jQuery ajax)發佈到我的控制器中的自定義方法,以便我可以構建動態數據庫查詢,我從下拉菜單中獲取值並將它們用作我的搜索查詢。將屬性傳遞給方法jquery和rails
我的方法
class PublicController < ApplicationController
def rehomed(query={})
Animal.where(query).to_json
respond_to do |format|
format.js {render :json => {} }
end
end
end
Ajax調用
$('select.btn').on('change', function() {
var animal_type = $('#animalType option:selected').text();
var animal_town = $('#animalTown option:selected').text();
$.ajax({
type: 'POST',
url: '/public/rehomed',
data: {
animal_type: animal_type
},
success: function(data) {
console.log(data);
}
});
});
因此,作爲一個例子,如果從下拉菜單中用戶選擇 '貓',離我的方法查詢應該是
此刻它正在執行的查詢是
SELECT "animals".* FROM "animals"
這是剛剛選擇每一種動物
我如何做到這一點?我該怎樣通過內{render :json => {} }
我試着去弄清楚如何把這個一起,任何指針將不勝感激
感謝
我不知道你的動作定義(接受查詢參數),但你有沒有嘗試過:'Animal.where(params)'來查看是否執行了正確的查詢? – Alireza 2014-10-30 10:44:24