0
我有一個有很多通過關聯。路由自定義,刪除動作與多個通過關聯
公司通過Follows有許多用戶。我希望用戶能夠關注公司。 - 我正在爲用戶使用Devise。
我對一家公司和一家公司都有自定義的操作。後續行動正在發揮作用,但我在取消關注中遇到了麻煩。
def follow
@firm = Firm.find(params[:id])
@firm.users << current_user
respond_to do |format|
format.html { redirect_to @firm }
end
end
def unfollow
@firm = Firm.find(params[:id])
current_user.follows.find_by_firm_id(@firm.id).destroy
respond_to do |format|
format.html { redirect_to firms_url }
end
末 在我的routes.rb
resources :firms do
member do
post 'follow'
delete 'unfollow'
end
end
,並在我公司查看
<%= link_to 'unfollow', unfollow_firm_path(firm), :method => 'delete' %>
我收到以下錯誤
NoMethodError in FirmsController#unfollow
undefined method `follows' for nil:NilClass
我耙路線命令顯示f以下
follow_firm POST /firms/:id/follow(.:format) firms#follow
unfollow_firm DELETE /firms/:id/unfollow(.:format) firms#unfollow
如果您有任何意見,我將不勝感激!
非常感謝
我明白了,謝謝!我已經給出了一個嘗試,現在似乎正在尋找行動,但現在似乎終止會議而不刪除以下內容。這導致再次請求登錄。 – RMcNairn 2012-04-07 22:14:27
好像你沒有會話,否則current_user不會是零 – DanS 2012-04-07 22:18:15
好吧,這很有幫助,意味着我知道從哪裏開始看現在!感謝丹的幫助。 – RMcNairn 2012-04-07 22:20:53