Как мне смоделировать вложенную ветку комментариев? - PullRequest
0 голосов
/ 13 марта 2011

Привет Я реализую форум с вложенными темами сообщений (стиль Reddit) темы и комментарии можно голосовать. темы могут быть помечены темы имеют заголовки, комментарии нет мои представления обычно должны генерировать только подмножество из 3 уровней всего дерева комментариев.

Мне интересно, следует ли мне создать отдельную модель таблицы для потоков или использовать только таблицу, где root = 0, если это запись потока

В последнем варианте я подумываю создать модель таблицы, которая будет представлять поток (id будет идентификатором корневого комментария

Какой будет самый простой способ его реализации?

Edit:

это то, что я думаю о втором варианте. какие отношения должны иметь темы и сообщения? должен ли поток быть ресурсом?

class Thread 
  include ActiveModel::Validations

  attr_accessor :root_post_id, :depth
end

class Post < ActiveRecord::Base
  belongs_to :user
  belongs_to :post
  #belongs_to :thread ?????

  acts_as_tree

  acts_as_taggable_on :topics 
end

1 Ответ

0 голосов
/ 13 марта 2011

Один из способов реализовать это - иметь поток и ответы в одной и той же таблице.

ID | THREADID

Поле идентификатора может быть сгенерировано автоматически. Поле THREADID принимает идентификатор сообщения в теме, который всегда будет первым сообщением в обсуждении, а все остальные ответы будут наследовать этот же идентификатор.

Поэтому корневая запись - это та, где ID == THREAD, а ответы - это те, где ID! = THREADID.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...