gpt4 book ai didi

symfony - Sonata如何对当前实体属性进行自动完成过滤

转载 作者:行者123 更新时间:2023-12-02 14:32:06 24 4
gpt4 key购买 nike

我正在使用 Sonata Admin Bundle 开发一个 sf2 项目。该项目是一个人道主义使命捐赠网站。我有一个“Personne”实体,代表捐助者(捐赠者)。

我的问题如下:我必须使用自动完成功能来过滤奏鸣曲 ListView 中的结果。我希望使用当前实体(“Personne”)的“name”属性来过滤结果。

我期待什么:

$datagridMapper
->add('personne', 'doctrine_orm_model_autocomplete',
array('label' => 'AutoComplete'),
null,
array('property' => 'name'))

// error output : " The option `association_mapping` must be set for field: `personne` "

您可以在这个要点上看到我的完整管理类和实体: https://gist.github.com/chalasr/0658a02b1c04180f5563

我了解此字段类型保留给实体关联(例如,我已经使用它按人员名称(其他管理类)过滤我的捐赠实体的结果。

我的问题是:可以做我需要的吗?如果我无法使用此字段类型来做到这一点,那么完成此任务的正确方法是什么?

感谢您的帮助。

最佳答案

经过大量测试,Sonata似乎尚未提供此功能。

所以,我在我的管理 Controller 中构建了一个自制的自动完成方法,并在我覆盖的 CRUD:list.html.twig 模板中将其用作 ajax。此方法将字段名称、其他自动完成字段值和关键字作为参数,并在 keyup 事件上重新加载结果。

你可以看看这个要点: https://gist.github.com/chalasr/5c27ae64dc596967f18a

如果您有优化我的代码的想法/建议($formMapper 的简单自动完成字段类型?),我真的很感兴趣。

关于symfony - Sonata如何对当前实体属性进行自动完成过滤,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31947976/

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