Я определил один из моих пользовательских методов в PostsController следующим образом: -
class PostsController < ApplicationController
...<<other methods truncated from display >>
public
def update_bid_winner (winner_id)
@post.bid_winner_id = winner_id
@post.save
end
end
Но когда я пытаюсь вызвать его с другого контроллера (в моем случае это BidsController). Где Bid является вложенным ресурсом публикации: -
resources :posts do
resources :bids do
member do
get 'offer_bid'
end
end
end
Я попытался вызвать свой пользовательский метод следующим образом из контроллера ставок: -
def offer_bid
@post = Post.find(params[:post_id])
@bid = Bid.find(params[:id])
@post.update_bid_winner(@bid.user_id) <<<<<<<<<< Here goes the call
@post.save
redirect_to post_path(@post)
end
Но я получаю сообщение о том, что неопределенный метод update_bid_winner: -
undefined method `update_bid_winner' for #<Post:0xb68114f4>
Помоги мне. я делаю что-то не так здесь? Если да, пожалуйста, предложите способы достичь того же самого!
Заранее спасибо.