[FOSUserBundle自定义类内的用户名属性,用于全文索引

问题描述 投票:0回答:1

[我试图将两列设置为fulltext索引,但是我的问题是用户名来自FOS \ UserBundle \ Entity \ User,如果我尝试在下面的注释中使用它,则会收到错误消息] >

[Doctrine \ DBAL \ Schema \ SchemaException]没有名称为表my_table_name上的“名称,用户名”>

因为在我的UserEntity中,我没有属性用户名。它在BaseUser中定义。关于如何能够做到这一点的任何想法?我设法使其直接更改数据库表即可工作,但想知道如何在这里使用Doctrine方法。

use FOS\UserBundle\Entity\User as BaseUser;

/**
 * @ORM\Table(name="my_table_name", indexes={@ORM\Index(name="escape", columns={"name, username"}, flags={"fulltext"})})
 */
class UserEntity extends BaseUser

这里是有效的MySQL命令:

ALTER TABLE table_clean_db.user ADD FULLTEXT INDEX escape (username, name);

我试图将两列设置为全文索引,但是我的问题是用户名来自FOS \ UserBundle \ Entity \ User,如果我尝试在下面的注释中使用它,我会收到...] >

我认为您在columns={"name, username"}上有错字。

应为2个字符串,用逗号columns={"name", "username"}分隔

php mysql symfony doctrine
1个回答
0
投票

我认为您在columns={"name, username"}上有错字。

© www.soinside.com 2019 - 2024. All rights reserved.