, Conversation User manytomany. , 2 , .
" " ( "" ) . , .
, hasMany , ConversationParticipants, conversion_id, user_id , type, (/).
, - ( !)
class Conversation extends Doctrine_Record {
public function setTableDefinition() {
}
public function setUp() {
$this->hasMany('User as Users', array(
'local' => 'conversation_id',
'foreign' => 'user_id',
'refClass' => 'ConversationParticipants'
)
);
}
}
class User extends BaseUser
{
public function setTableDefinition() {
}
public function setUp()
{
$this->hasMany('Conversation as Conversations', array(
'local' => 'user_id',
'foreign' => 'conversation_id',
'refClass' => 'ConversationParticipants'
)
);
}
}
class ConversationParticipants extends Doctrine_Record
{
public function setTableDefinition()
{
$this->hasColumn('user_id', 'integer', null, array(
'primary' => true
)
);
$this->hasColumn('conversation_id', 'integer', null, array(
'primary' => true
)
);
$this->hasColumn('type', 'string', 255);
}
}
ORM, , , Doctrine ,
, ,,