быстрый вопрос, который я застрял с часов:
Для моего проекта сайта cakePHP (с использованием версии 2.0) у меня есть 2 модели.Они немного неясны, поэтому я переведу модель к стандартным моделям сообщений в блоге.
Так что у меня есть модель "Сообщений" и для этих многих "Категории".
class Post
$belongsTo = 'Category'
class Category
$hasMany = 'Post'
Все идет нормально.Теперь я хочу, чтобы в каждой категории был ровно один (обязательный) «основной пост».
Как бы я связал это?
- Еще одна модель «MainPost»?Это кажется излишним, поскольку оно будет иметь тот же контент, что и сообщения.
- Логический столбец "is_main" в сообщениях?Не кажется правильным, поскольку только один пост из каждой категории может быть "основным".
- Столбец mainpost_id в категориях?Звучит хорошо, но «$ ownTo» - единственная ассоциация, которая позволяет внешнему ключу находиться в текущем классе.И сказать, что категория принадлежит посту, когда обратное тоже верно, кажется мне неправильным.Также принадлежит ассоциация «многие к одному», и я хочу, чтобы она была ассоциацией «один к одному».
Пожалуйста, помогите мне, [введите имя].Ты моя единственная надежда.;)
Редактировать: Я думаю, было бы замечательно, если бы был способ иметь отношение "hasOne", но иметь внешний ключ в том же классе, что и $ hasOne X, а не в другом, как обычно.