Почему я получаю undefined метод `comments 'при использовании act_as_commentable_with_threading?

На странице #show сообщества я получаю:

неопределенный метод `comments '

Мне было интересно, почему я получил эту ошибку?

<�Сильный> community_topics_controller.rb

def show
  @community_topic = CommunityTopic.find params[:id]

  @comment = @community_topic.comments.build
  @community_topic.comments.pop

  respond_to do |format|
    format.html # show.html.erb
    format.json { render json: @community_topic }
  end
end

модели/community_topic.rb

acts_as_commentable

<�Сильный> вид/community_topics/show.html.erb

<%= render 'comments/form' %>

просмотр/комментарии/_form.html.erb

  <div class="field">
    <%= f.label :comment %>
<%= f.text_area :comment %> <%= f.hidden_field :commentable_id %> <%= f.hidden_field :commentable_type %> </div>
1
добавлено отредактировано
Просмотры: 1
de
Вы выполнили миграцию? Пробовали ли вы в консоли rails console ? Какая именно ошибка? Вы остановились и запустили сервер rails server ?
добавлено автор nathanvda, источник
Вы видите ошибку в журналах?
добавлено автор nathanvda, источник
Какую версию рельсов вы используете и какую версию драгоценного камня?
добавлено автор nathanvda, источник
@nathanvda Спасибо. Да, я выполнил миграцию. Я не пробовал консоль рельсов. и я перезапустил свой сервер Apache
добавлено автор MKK, источник
@nathanvda Я попытался сделать то же самое на консоли rails, но все равно показывает то же самое неопределенный метод `comments '
добавлено автор MKK, источник
@nathanvda Это говорит то же самое и в журнале. Обработка через CommunityTopicsController # показать как HTML Параметры: {"community_id" => "walmart", "id" => "24"} [1m [36mСообщение сообщества (0.8ms) [0m [1mSELECT сообщества . * FROM сообщества WHERE сообщества . community_name = 'walmart' AND ( community . deleted_at IS NULL) LIMIT 1 [0m [1m [35mCommunityTopic Load (0.3ms) [0m SELECT community_topics . * FROM community_topics WHERE community_topics . id = 24 AND ( community_topics . deleted_at IS NULL) LIMIT 1 Завершено 500 Внутренняя ошибка сервера в 130 мс
добавлено автор MKK, источник
NoMethodError (undefined method comments "для # ): приложение/контроллеры/community_topics_controller.rb: 75: in show '
добавлено автор MKK, источник
@nathanvda rails3.2.6 и act_as_commentable_with_threading (1.1.2)
добавлено автор MKK, источник
Кажется, что ассоциация не связана :( Но на самом деле у меня есть act_as_commentable в моем /models/community_topic.rb
добавлено автор MKK, источник

1 ответы

Я нашел ответ.
Мне пришлось использовать comment_threads вместо комментариев , пока я использовал 'act_as_commentable_with_threading'

4
добавлено