2012-10-26 108 views
0

在邁克爾·哈特爾的精彩教程listing 11.36,改變了取消關注形式使用AJAX,但我不斷收到當我點擊「取消關注」按鈕,出現以下錯誤:邁克爾·哈特爾Rails的教程 - 清單11.36(AJAX取消關注)錯誤

ActionView::Template::Error (undefined method `model_name' for NilClass:Class): 

的形式,但是,沒有工作。如果我點擊「取消關注」,我取消關注當前顯示的用戶。如此看來,當表單提交@user形式的聲明是有效的:

<%= form_for(current_user.relationships.find_by_followed_id(@user), 
     html: { method: :delete }, 
     remote: true) do |f| %> 

但也許當「關注」形式試圖加載它不再可用?

我在長度試圖追蹤下來,但我無法弄清楚,我還沒有看到任何人張貼了同樣的問題。

任何線索?

謝謝。

+0

我回答了我自己的問題。見下文。 – bergie3000

回答

0

Agh ...愚蠢的錯誤。

我已經複製了應用程序/視圖/關係/ create.js.erb到應用程序/視圖/關係/ destroy.js.erb的代碼。複製並粘貼錯誤。

對不起,虛驚一場。謝謝你的時間。

0

我不知道,但如果異步調用的工作及以下用戶參考成功地從引用@user指向零導致此參考剛剛被刪除的數據庫中刪除?

0

你已經按照你的人際關係控制器定義的動作?

def destroy 
    @user = Relationship.find(params[:id]).followed 
    current_user.unfollow!(@user) 
    respond_to do |format| 
     format.html { redirect_to @user } 
     format.js 
    end 
    end 
+0

是的,我在我的關係控制器中有該代碼。看到我上面的迴應。感謝您的答覆。 – bergie3000

相關問題