首页 > 解决方案 > Findby() 中的 Symfony LIKE 标准

问题描述

在一个表单中,我有一个文本输入,用于保存某些船舶的名称或部分名称。

当前(工作)findby如下:

$shipList = $shipRepo->findBy(array('faction'=>$factionSearch, 'extension'=>$extensionSearch));

为方便起见,删除了一些过滤器。我使用这种方法,这样我就不必在存储库中编写一个包含 8 个关节和数百个选择子句的巨大查询。

示例: 数据库中有一艘名为“Le Superbe”的船。我的目标是,如果用户在文本字段中输入“sup”,这艘船将出现在输出中。

问题:我可以在 findBy() 的当前过滤器顶部处理 LIKE 搜索吗?

标签: symfonydoctrine-ormsql-like

解决方案


我可以在 findBy() 的当前过滤器顶部处理 LIKE 搜索吗?

答案是不。教义 findBy 方法不允许您使用 LIKE。您将不得不使用 DQL 来执行此操作。


推荐阅读