gpt4 book ai didi

symfony - Sonata Admin 的 sonata_type_model 字段的自定义选择列表

转载 作者:行者123 更新时间:2023-12-02 00:35:48 24 4
gpt4 key购买 nike

我正在使用 Sonata Admin,并且有一个类别字段,我需要像选择中的树一样按顺序显示它们:

<select>
<option>Category father-1</option>
<option>--Category child-1-1</option>
<option>--Category child-1-2</option>
<option>--Category child-1-3</option>
<option>----Category child-1-3-1</option>
<option>----Category child-1-3-2</option>
<option>--Category child-1-4</option>
<option>--...</option>
<option>Category father-2</option>
</select>

这可能吗?我已经尝试过在“choice_list”中包含在 getTreeCatsArray 方法中生成的数组:

protected function configureFormFields(FormMapper $formMapper)
{
$tree_cat_array = $this->em->getRepository('MyBundle:Category')->getTreeCatsArray();

$formMapper
->add('category', 'sonata_type_model', array(
'empty_value' => '',
'choice_list' => $tree_cat_array));
}

这显示了错误:

The option "choice_list" with value "Array" is expected to be of type "null", "Symfony\Component\Form\Extension\Core\ChoiceList\ChoiceListInterface"

我不确定是否必须使用字段类型“sonata_type_model”或“c​​hoice”

最佳答案

好的,我已经得到了在树中排序的类别列表,以便将其包含在相关实体中,如下所示:

protected function configureFormFields(FormMapper $formMapper)
{
$em = $this->modelManager->getEntityManager('MyBundle\Entity\Category');

$query = $em->createQueryBuilder('c')
->select('c')
->from('MyBundle:Category', 'c')
->where('c.parent IS NOT NULL')
->orderBy('c.root, c.lft', 'ASC');

$formMapper
...
->add('categoria', 'sonata_type_model', array(
'required' => true,
'query' => $query
))
...
;
}

希望对大家有帮助

关于symfony - Sonata Admin 的 sonata_type_model 字段的自定义选择列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18482414/

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