我有两个表消息和用户的模型,其中包含字段:
消息:id 消息 created_date 状态
用户:id usr_name
我有另一个没有模型的表 message_to:
message_to: id message_id user_id 状态
现在,我的问题是我需要通过当前消息模型中 message_to 中的 user_id 从用户表中获取用户名。我怎样才能为此创建关系?我不想在这里使用查询生成器。
问问题
496 次
1 回答
1
在消息模型中:
<?php
class Message extends CActiveRecord {
// ...
public function relations() {
return array(
'user' => array(
self::BELONGS_TO,
'User',
'{{message_to}}(message_id, user_id)'
),
);
}
}
然后像这样打电话$message->user->usr_name;
要能够获取用户的消息,您可以在用户模型中编写关系:
<?php
class User extends CActiveRecord {
/...
public function relations() {
return array(
'messages' => array(
self::HAS_MANY,
'Message',
'{{message_to}}(user_id, message_id)'
),
);
}
}
然后像这样打电话foreach($user->messages as $message) { ...
于 2012-08-12T14:42:43.440 回答