2015-12-21 33 views
0

我想保存通過jQuery標記發送的參數,這些參數被放置在不同的站點中作爲mysql中的記錄與Rails。我寫到目前爲止我的jQuery標籤如下。jQuery發送參數到Rails應用程序以保存在數據庫中

<script src="//code.jquery.com/jquery-1.11.3.min.js"></script> 
<script src="//code.jquery.com/jquery-migrate-1.2.1.min.js"></script> 
<script src="jquery.xdomainajax.js"></script> 
<script> 
$(function(){ 
var webURL = {fullUrl: window.location.href 
    };//for getting complete url,or window.location.origin for domain alone. 
    $.ajax({ 
    url: 'http://localhost:3000/viewcounter/count', // count_action in viewcounter_controller 
    type: "GET", 
    data: webURL 
    }) 
    }); 
    </script> 

對於導軌部分,控制器被稱爲viewcounter是這樣的。

def count 
url = params[:fullURL] 
Viewcounter.create(site_url: url) 
end 

也,我在配置寫這篇照顧跨域的/ application.rb中

class Application < Rails::Application 
config.active_record.raise_in_transactional_callbacks = true 
config.action_dispatch.default_headers.merge!({ 
'Access-Control-Allow-Origin' => '*', 
'Access-Control-Request-Method' => '*' 
}) 
end 

然後創建一個HTML文件,上面的jQuery寫入其中,並在瀏覽器中打開它。

我期待jQuery在控制器中觸發動作,並在數據庫中創建記錄。

但它沒有。什麼是問題,我該如何解決它?

+0

它不是100%清楚你所想實現。然而,從你的代碼的外觀來看,我認爲你的意思是「POST」請求? –

回答

0

傳遞數據在您的網址

http://localhost:3000/viewcounter_controller/count?param_1=param1&param_2=param2 

然後在控制器索要PARAMS

0

就試試這個:

$(function(){ 
    var webURL = window.location.href; 

    $.ajax({ 
    url: 'http://localhost:3000/viewcounter/count?fullURL=' + webURL, 
    type: "GET" 
    }) 
}); 
+0

嘗試過,但沒有奏效。 – Suda

相關問題