У меня есть много через ассоциацию.
Фирмы имеют много пользователей через подписчиков.Я хочу, чтобы пользователи могли следить за фирмами.- Я использую Devise для пользователей.
У меня есть следующее действие в контроллере моей фирмы.
def follow
@firm.users << current_user
end
в моих маршрутах.rb
resources :firms do
post :follow, on: :member
end
и вмои фирмы видят
<%= link_to "Follow", follow_firm_path(@firm), method: :post %>
Однако, когда я продолжаю получать следующую ошибку маршрутизации в браузере
No route matches {:action=>"follow", :controller=>"firms"}
Rake Routes подтверждает следующее
follow_firm POST /firms/:id/follow(.:format) firms#follow
Любые идеи, чтопроблема может быть?
Большое спасибо
Редактировать: Код контроллера
class FirmsController < ApplicationController
before_filter :authenticate_user!, :except => [:show, :index]
def index
@firm_names = Firm.all.map &:name
direction = params[:direction]
direction ||= "ASC"
@firms = Firm.order("name #{direction}")
respond_to do |format|
format.html # index.html.erb
format.js
end
end
def follow
@firm.users << current_user
end
Я использую следующее действие в частичнойв индексном представлении.