Я поражен одной проблемой, связанной с foreignKey
концепции. У меня есть два стола users
& user_relations
.foreignKey в модели на основе состояния в cakephp
users user_relations
id username id user_id friend_id status
1 abc 1 1 2 Accepted
2 def 2 2 3 Accepted
3 ghi 3 1 3 Accepted
здесь friend_id
является foreign_key
и моя user_relations
модель выглядит
public $belongsTo = array(
'Friend' => array(
'className' => 'User',
'foreignKey' => 'friend_id'
)
);
Мои условия будут как
'conditions' => array(
"OR" => array(
'UserRelation.user_id' => $iLoggedUserId,
'UserRelation.friend_id' => $iLoggedUserId,
),
'ViewerRelationship.status' => 'Accepted'
)
Теперь, когда пользователь "1"
авторизован, то он получит информация о пользователях "2"
& "3"
на основе foreignKey
friend_id
.
Если пользователь "2"
затем регистрируется, он получает информацию о пользователях "2"
. Но здесь мне нужно получить информацию о пользователях "1"
& "3"
. то есть, в одном случае необходимо принимать информацию на основе user_id
а не friend_id
Если я могу держать foreignKey
в состоянии я могу получить результат, основанный на user_id
или friend_id
.
Любая помощь пожалуйста ..!
Попробуйте изменить ваше отношение к HABTM, как показано в этом ответе: HTTP: // stackoverflow.com/questions/10112825/multiple-relations-to-one-table-in-cakephp – theotherdy