2009-11-13 55 views
0

我有教義組織用戶以下YAML架構:PHP Doctrine - YAML語法幫助。多對多關係的默認值?

Person: 
    tableName: people 
    columns: 
    id: 
     type: integer 
     primary: true 
     autoincrement: true 
    firstname: 
     type: string 
     notnull: true 
     lastname: 
     type: string 
     notnull: true 
User: 
    inheritance: 
    extends: Person 
    type: column_aggregation 
    keyField: type 
    keyValue: 1 
Userdetails: 
    columns: 
    person_id: 
     type: integer 
     primary: true 
    password: 
     type: string 
     notnull: true 
    relations: 
    User: 
     foreignType: one 
     local: person_id 
     onDelete: CASCADE 
     onUpdate: CASCADE 
Group: 
    tableName: groups 
    columns: 
    id: 
     type: integer 
     primary: true 
     autoincrement: true 
    name: 
     type: string 
     notnull: true 
UserGroup: 
    columns: 
    group_id: 
     type: integer 
     primary: true 
     person_id: 
     type: integer 
     primary: true 
    relations: 
    User: 
     foreignType: many 
     local: person_id 
    Group: 
     foreignType: many 

基本上,誰是用戶的任何人將屬於一個或多個組。
默認情況下,有什麼方法可以將新用戶添加到特定的組?

任何意見讚賞。

感謝

回答

0

我必須管理員,我不是在最新版本的學說了,但由於它的記錄需要一個默認的構造函數,我認爲它應該足以從數據庫中加載默認的組用戶構造函數

class User extends Doctrine_Record 
{ 
    public __construct() 
    { 
     parent::__construct(); 
     $this->groups[] = Doctrine::getTable('Group')->findByName('DefaultGroup'); 
    } 
} 

$blauser = new User(); 
$blauser->save(); // Will save the user with the default group 

根據您的體系結構,您可能需要考慮將初始化置入您的控制器中。