gpt4 book ai didi

symfony2 邻接表模型与 Forms 一起使用

转载 作者:行者123 更新时间:2023-12-04 05:53:09 25 4
gpt4 key购买 nike

我有一个自引用表,如学说文档中所述(它已经在整个应用程序中大量使用,因此更改为嵌套树不是当前选项)。

http://docs.doctrine-project.org/projects/doctrine-orm/en/2.0.x/reference/association-mapping.html#one-to-many-self-referencing

表结构如下所示:

+----+----------+--------+
| id | parentID | Name |
+----+----------+--------+
| 1 | null | Name 1 |
| 2 | 1 | Name 2 |
| 3 | 1 | Name 3 |
| 4 | 2 | Name 4 |
| 5 | 1 | Name 5 |
--------------------------

到目前为止,在我们的表单中,我们一直在使用我们表单的整个实体内容,即
        $builder->add('hierarchyid', 'entity', array(
'class' => 'AcmeTestBundle:Hierarchies')

哪个工作正常,但现在我希望能够修改它以在表中设置点,即:
        ->add('hierarchyid', 'entity', array(
'class' => 'AcmeTestBundle:HierarchiesTest',
'query_builder' => function(HierarchiesTestRepository $repo)
{return $repo->findBy??????}

但是我遇到了如何完成这个的心理障碍,有什么想法吗?

我考虑过的一个选择是,我已经拥有构建这些实体的数组集合的代码,这些代码在其他地方使用,但我不熟悉如何在表单类型中实现学说数组集合。
private function createNodeArray($node) 
{
$this->hierarchyArrayCollection->add($node);
foreach ($node->getChildren() as $hierarchy)
{
$this->createNodeArray($hierarchy);
}
}

最佳答案

query_builder选项应该返回 QueryBuilder对象,我假设您的 findAllById()方法返回实际数据。你需要改变它;)

除此之外,您可能应该添加 property指示哪个字段将显示在列表中的选项...

关于symfony2 邻接表模型与 Forms 一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9824937/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com