У меня есть сценарий, где мне нужно сложное полиморфное отношение и нужна помощь в нем.Сложная полиморфная связь
У меня есть аа модель «документ», который может быть присоединен к любой модели, как «Сотрудник», «Пользователь» и т.д.
Я занимаюсь разработкой плагин для крепления различных документов
class Employee < ActiveRecord::Base
attach_documents_as :general_documents
attach_documents_as :meeting_documents
end
До этого момента я преуспел. Но для того, чтобы получить больше, мне нужно назначить какой-то тип документу, так как я хочу указать название модели типа документа с такой основной моделью.
class Employee < ActiveRecord::Base
attach_documents_as :general_documents, :general_doc_types
attach_documents_as :meeting_documents, :meeting_doc_types
attach_documents_as :job_record, :misc_doc_types
end
Здесь
:general_doc_types , :meeting_doc_types, :misc_doc_types
все названия моделей.
У меня есть модель документа, как этот
class Document < ActiveRecord::Base
attr_accessible :title, :description, :attachment
belongs_to :attachable, :polymorphic => true
has_attached_file :attachment
end
Может ли одна иметь представление, что, как я могу я сделать отношения документа к различным моделям типов. Будем искать ваши отзывы.
Так будут ли генерироваться ваши модели general_doc_types и т. Д. Вашим генератором или пользователем? Если это первый случай, считаете ли вы, что вы сделали какую-то магию, чтобы фактическое отношение стало простым 'has_many' и' own_to'? – PeterWong