Есть две модели: User
, кто делает комментарии (предоставленные Devise) и Audio
, о которых они комментируют. На каждой странице audios#show
должны быть перечислены все комментарии к этому аудио, и есть небольшая форма, через которую можно отправить другую.Как настроить правильные маршруты для формы act_as_commentable?
Я сделал Audio
acts_as_commentable
. Затем я убедился, что Comment belongs_to :user
и User
has_many :comments
.
Для маршрутов, у меня есть
resources :audios do
resources :comments
end
Затем на audios_controller,
def show
if user_signed_in?
@comment = @audio.comments.new
end
end
Тогда я написал простую form_for(@comment)
форму с 'комментарий' поле и кнопку отправки. Вот и все.
Ошибка, которую я получаю при загрузке страницы: undefined method 'comments_path'. Я искал эту ошибку, прочитал ответы StackOverflow и попробовал form_for(@audio, @comment)
. Это получает ошибку ** не может написать неизвестный атрибут «html».
Я немного в тупике; У меня есть модели и отношения, набросанные на моем блокноте, но я неопытен, и использование вещей, которые я не совсем понимаю, например, «Задуматься за кулисами», бросает меня за цикл. Если бы кто-нибудь мог дать мне подсказку на этих маршрутах/формах, мне это понравилось бы.
Это работало отлично подходит для меня. Благодаря! – aLostMonkey