У меня есть стандартная модель пользовательских моделей с обычными полями.Rails - модель, которая может иметь два разных поднабора
Это место, где люди либо ищут место для проживания, либо у них есть место для проживания. Поэтому у меня есть две категории пользователей, которыми может быть человек. Эти две категории очень разные (т. Е. Человек, ищущий место для проживания, будет иметь очень разные поля для человека, у которого есть место для проживания).
Так Пользователь имеет:
User: name, email, password, profile_id
Пользователь также может иметь профиль (т.е. они ищут дом).
Profile: age, sexuality, religion, occupation
Это то, что у меня есть на данный момент. Теперь мне нужно, чтобы изменить это немного, так что пользователь может иметь профиль или ... они могут иметь дом (то есть у них есть дом и ищут больше людей):
House: price_per_week, address, etc
Как лучше эта модель в ActiveRecord? Полиморфная ассоциация какого-то рода?
Yep У меня было ощущение полиморфный не было правильным тоже здесь. Я еще очень новичок в Rails. Если у меня есть отношения между таблицами пользователей и профилей (и домами), то, конечно же, мне придется проверять везде, где мне нужно то или другое. Например, даже с полем типа, мне нужно будет проверить, что у пользователя есть дом или профиль, прежде чем я получу его? Разве это не плохо? Кажется немного ... неудобно. –
Я бы не стал беспокоиться об этих деталях. Вы можете использовать области или другие атрибуты для получения моделей, которые вам нужны, когда они вам понадобятся. –
Хорошо. Я постараюсь сначала. –