未知记录属性/相关组件“primary_keys”形成嵌入/ m:n关系

时间:2011-03-23 20:39:14

标签: symfony1 doctrine many-to-many

我有这个架构:

JosUsers:
  columns:
    id: { type: integer(4), primary: true, autoincrement: true }
    name: { type: string(255), notnull: true }
    username: { type: string(150), notnull: true }
    email: { type: string(100), notnull: true }
    password: { type: string(100), notnull: true }
    usertype: { type: string(25), notnull: true }
    block: { type: integer(1), notnull: true }
    sendemail: { type: integer(1), notnull: false }
    gid: { type: integer(1), default: '1', notnull: true }
    registerdate: { type: timestamp(25), notnull: true }
    lastvisitdate: { type: timestamp(25), notnull: true }
    activation: { type: string(100), notnull: true }
    params: { type: string(), notnull: true }
  relations:
    AccessControlObject: { class: JosCoreAclAro, local: id, foreign: value, foreignType: one }

JosCoreAclAro:
  columns:
    id: { type: integer(4),fixed: false, unsigned: false, primary: true, autoincrement: true}
    section_value: { type: string(240), notnull: true }
    value: {type: string(240), notnull: true }
    order_value: { type: integer(4), notnull: true }
    name: { type: string(255), notnull: true }
    hidden: { type: integer(4), notnull: true }
  relations: 
    Group: { class: JosCoreAclAroGroups, local: aro_id, foreign: group_id, refClass: JosCoreAclGroupsAroMap,foreignType: one }

JosCoreAclGroupsAroMap:
  columns:
    group_id: { type: integer(4), primary: true }
    section_value: { type: string(240) }
    aro_id: { type: integer(4), primary: true }
  relations: 
    JosCoreAclAro: { class: JosCoreAclAro, local: aro_id, onDelete: CASCADE }
    JosCoreAclAroGroup: { class: JosCoreAclAroGroups, local: group_id, onDelete: CASCADE }

JosCoreAclAroGroups:
  columns:
    id: {type: integer(4), primary: true, autoincrement: true }
    parent_id: { type: integer(4), notnull: true }
    name: { type: string(255), notnull: true }
    lft: { type: integer(4), notnull: true }
    rgt: { type: integer(4), notnull: true }
    value: { type: string(255), notnull: true }

当我像这样嵌入JosCoreAclAroForm时

class JosUsersForm extends BaseJosUsersForm{
    public function configure(){


        $josCoreAclAroForm = new JosCoreAclAroForm();
                $this->embedForm('josCoreAclAro', $josCoreAclAroForm);

    }



}

我在“JosCoreAclAroGroups”上获得了未知的记录属性/相关组件“primary_keys”

我无法弄清楚为什么会调用这个函数,我也无法在任何地方找到它?

1 个答案:

答案 0 :(得分:0)

Greg0ire得到了答案:“一个类名应该是单数,并且由于学说根据名称是否以s结尾做出许多猜测,这可能是你问题的根源,JosCoreAclAroGroups结束时的s可能是在某处误解了。“