2012-01-06 79 views
0

我有一個遠程鏈接,單擊時發送一個Ajax請求到後臺的控制器動作。該請求會創建一個新的數據庫條目。問題是,它每次點擊5次寫入數據庫。Rails 3.1遠程連接寫入數據庫5次。

這裏是我的鏈接,並控制行動:

<a href="/link/Link Name To Be Saved" data-remote="true">click</a> 

    def track_link 
    y = cookies[:user_email] 
    x = User.where(email: y).first 
    z = x.id 
    name = params[:link_name] 

    w = Link.new 
    w.name = name 
    w.user_id = z 
    w.save 
    respond_to do |format| 
     format.js { render action: "index" } 
    end 
    end 
+1

那麼,你應該跟蹤發生了什麼。也許你的行動被稱爲5次。你的'development.log'中有什麼? – 2012-01-06 20:42:01

+0

我看到它調用get請求5次,這對數據庫有意義。但爲什麼?它與ajax有關嗎? – Lsdafjklsd 2012-01-06 20:45:53

+1

最有可能。 – 2012-01-06 20:49:11

回答

2

jquery_ujs文件可能被列入5倍。

+0

嘿,我在提出請求的同時檢查了檢查員,並在「發起者」列下列出了5個不同的.js文件。他們是:jquery.js application.js vendor.js active_admin.js和application.js再次..我如何處理重疊,尤其是與積極管理的東西。 – Lsdafjklsd 2012-01-09 13:57:04