小编Say*_*Net的帖子

Doctrine 复合主键外键

我从现有数据库中实现了一个带有 Symfony 2 的 Web 应用程序。

我已经建立了一个实体,其主键由两个外键组成。

例子:

Entity1 具有复合主键:property1 (PK)、property2 (PK) Entity2 主键由两个外键组成:property1 (PK FK)、property2 (PK FK)、propriete3 (PK)

我不知道如何实现这个关联:

在 entity2 我做:

/** 
 * @ORM\ManyToOne (targetEntity = "Entity1") 
 * @ORM\JoinColumns ({
 *    @ORM\JoinColumn (name = "property1" referencedColumnName = "property1") 
 *    @ORM\JoinColumn (name = "property2" referencedColumnName = "property2") 
 *    @ORM\Id 
 * @}) 
 */ 
private $entity1; 
Run Code Online (Sandbox Code Playgroud)

但我收到一个错误:

不可能将实体“ExempleBundle\Entity\Entite1”与复合主键映射为另一个实体“ExempleBundle\Entity\Entite2#entite1”的主键的一部分。

如何正确处理这种与 Doctrine 的关联

我试图按照这个例子,但我不明白:http : //docs.doctrine-project.org/projects/doctrine-orm/en/latest/tutorials/composite-primary-keys.html#use-case-1-动态属性

您能否举一个具有类似案例的两个实体的示例,尤其是在这种情况下如何进行连接。

orm symfony doctrine-orm

6
推荐指数
2
解决办法
1万
查看次数

ZF2 - 带导航的多导航

是否有可能有2个不同的导航?

例如 :

//in module.config.php
'service_manager'=>array(
        'factories'=>array(
            'navigation1'=>'Zend\Navigation\Service\DefaultNavigationFactory',
            'navigation2'=>'Zend\Navigation\Service\DefaultNavigationFactory',
        ),
    ),
    'navigation'=>array(
        'navigation1'=>array(
            'home'=>array('type' => 'mvc','route' => 'home','active'=>false,'label' => 'Home','title' => 'Home',
                'pages'=>array(
                    'contact'=>array('type' => 'mvc','route'=>'contact','active'=>false,'label'=>'Contact','title' =>'Contact'),
                )
            ),
        ),
        'navigation2'=>array(
            'home'=>array('type'=>'mvc','route'=>'home','active'=>false,'label'=>'Home','title'=>'Home',
            'contact'=>array('type'=>'mvc','route'=>'faq','active'=>false,'label'=>'Faq','title'=>'Faq'),
            ),
        ),

//Dans laout
<?php echo $this->navigation()->menu('navigation1')->setMinDepth(0);?>
<hr />
<?php echo $this->navigation()->menu('navigation2')->setMinDepth(0);?>
Run Code Online (Sandbox Code Playgroud)

我想2个不同的菜单与不同的页面,但这种方法不运行.

每个人都有想法吗?

谢谢

Birzat

zend-framework2

5
推荐指数
1
解决办法
3355
查看次数

标签 统计

doctrine-orm ×1

orm ×1

symfony ×1

zend-framework2 ×1