Проблема с модельными ассоциациями (приложение 1st Rails) - PullRequest
0 голосов
/ 05 декабря 2010

Я разрабатываю небольшое приложение для нашей церкви.Это должно позволить планировать будущие массы, по существу назначая разные задачи различным служителям (помощник / сервер / мальчик-алтарь?).

Нужно уметь выбирать служащих служителей (с помощью флажков) и назначать задачу каждомуМинистрант (через списки опций), по массе (она не должна быть одинаковой для каждой массы).

Мои вопросы: 1. Как будут выглядеть миграции?Т.е. какие поля какого типа обязательны для заполнения?2. Как бы выглядели модельные ассоциации?В настоящее время я предполагаю, что 3 класса (Mass, Ministrant, Task).

Я нашел этот вопрос: Правильная структура данных модели?(Мое 1-е приложение Rails) и похоже, но я не знаю, как применить решение в этом примере ...

Буду признателен за вашу помощь!

1 Ответ

1 голос
/ 05 декабря 2010

3 модели: масса, министрант и задача.

В вашей консоли:

rails g model Mass date:datetime 
rails g model Ministrant name:string role:string
rails g model Task name:string ministrant_id:integer mass_id:integer

В ваших рубиновых файлах:

class Mass < ActiveRecord::Base 
   has_many :tasks
   has_many :ministrants, :through => :tasks
end
class Ministrant < ActiveRecord::Base
   has_many :tasks
   has_many :masses, :through => :tasks
end
class Task < ActiveRecord::Base
   belongs_to :ministrant
   belongs_to :mass
end
...