Я создаю приложение, которое будет иметь несколько отношений много. Вот один пример: у пользователя приложения будет несколько навыков. В то же время многие job_posts будут обладать несколькими навыками. Я хотел бы, чтобы иметь возможность повторно использовать модели навыков, чтобы я мог иметь что-то вроде этого:Несколько Rails для многих отношений
User----has_many----->Skill(smart)<---has_many----job_posting
^
|
has_many
|
Application
Таким образом, вы видите, я хочу быть в основном в состоянии создать один навык (в данном примере: «умный») , а затем ссылаются на это умение из нескольких разных моделей, используя has_many отношения.
Каков наилучший способ для этого? Я бы хотел избежать создания кучи дополнительных моделей для обработки отношений, поскольку у меня есть несколько из этих настроек в моем приложении.
В конце концов, было бы неплохо, чтобы иметь возможность сделать что-то вроде этого: myUser.skills.add (Skill.find (1)) myCompany.skills.add (Skill.find (1)). ..
PS Я знаю, что нет такой вещи, как skills.add(). Пожалуйста, предложите, что я мог бы использовать, если у вас есть что-то конструктивное. Спасибо :)
P.P.S Я использую MySQL в моей базе данных
Вам нужно будет настроить таблицу БД для хранения информации о взаимоотношениях. Посмотрите на использование 'has_many: through' –
hmm, это то, чего я надеялся избежать: /, тем более, что мне нужно было бы создать один для каждого типа отношений для каждой настройки, как это – Silvertail
Как еще вы думаете, что это можно сделать? Вы * можете * взять неэффективный маршрут и избегать таблиц отношений, добавляя внешние ключи по всему месту. –