Предисловие:
Если вы зависаете в #rubyonrails на freenode, это может звучать как эхо для вас, как я и просил об этом 2 дня назад.Потратив несколько часов на изучение ассоциаций AR, после моих дискуссий в #rubyonrails, я все еще чувствую себя потерянным, поэтому я спрашиваю здесь.:)
Цель
У меня есть несколько блогов.Мое намерение - создать пакетные представления, в которых я принимаю сообщение, выбираю блоги, в которые я хочу отправить сообщение, а затем назначаю пакету дату отправки.Позже я хотел бы создать Работника, который запрашивает Пакеты, а затем фактически отправляет Пост в связанные с ним Блоги.
Путаница
Я не совсем понимаю, какЯ должен настроить свои ассоциации и соответствующие таблицы.
Вот что у меня есть для моделей.
class Blog < ActiveRecord::Base
has_many :submissions
has_many :posts, :through => :submissions
end
class Post < ActiveRecord::Base
has_many :submissions
has_many :blogs, :through => :submissions
end
class Submission < ActiveRecord::Base
belongs_to :post
belongs_to :blog
end
Вот что у меня есть для таблиц.
[Blogs]
id :integer not null, primary key
title :string(255)
etc
[Posts]
id :integer not null, primary key
subject :string(255)
content :text
etc
[Submissions]
id :integer not null, primary key
submit_date :datetime
post_id :integer
forum_id :integer
etc
Вопросы
- В настоящее время у меня нет серийной модели. Должен ли я иметь это?Или "пакет" может быть выведен путем обратного отслеживания представлений?
- Если у меня должна быть модель Пакетов, будет ли это означать, что модель Submisson получит дополнительный внешний ключ?
- Есть ли еще "rails way "сделать это?
- Любые другие входные данные приветствуются!
Большое спасибо за чтение этого гигантского поста.