微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何在 shopware 6 中搜索翻译的实体?

如何解决如何在 shopware 6 中搜索翻译的实体?

我们想以编程方式在 Shopware 6 中搜索翻译后的名称并想出了这个:

$criteria = (new Criteria())
   ->addAssociation('property_group_option_translation.name')
   ->addFilter(new EqualsFilter('name',$value))
   ->addFilter(new EqualsFilter('id',$propertyGroupId));

return $this->propertyGroupOptionRepository->search($criteria,Context::createDefaultContext())->getEntities()->first();

但是我们得到了

Shopware\Core\Framework\DataAbstractionLayer\Dbal\Exception\UnmappedFieldException:未找到实体“property_group_option”中的字段“name”。

如何在一般情况下以及在这种特定情况下搜索已翻译的实体?

解决方法

编辑:

这应该有效

$criteria = (new Criteria())
    ->addAssociation('property_group_option_translation')
    ->addFilter(new EqualsFilter('property_group_id',$propertyGroupId))
    ->addFilter(new EqualsFilter('name',$value));

错误的旧答案

这不起作用:

$criteria = (new Criteria())
    ->addFilter(new EqualsFilter('property_group_id',$propertyGroupId))
    ->getAssociation('property_group_option_translation')
       ->addFilter(new EqualsFilter('name',$value));

另见

https://stackoverflow.com/a/67649705/288568

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。