FOSUser找到该文件,但该类不在其中,类名或命名空间可能有一个拼写错误

时间:2017-11-20 05:33:29

标签: symfony fosuserbundle symfony-3.2

我的实体是:

<?php

namespace MainBundle\Entity;

use FOS\UserBundle\Model\User as lat_users;
use Doctrine\ORM\Mapping as ORM;

/**
 * @ORM\Table(name="lat_users")
 * @ORM\Entity
 */
class User extends lat_users
{
    // ...
}

和我的config.yml

&#13;
&#13;
...
fos_user:
    db_driver: orm # other valid values are 'mongodb' and 'couchdb'
    firewall_name: main
    user_class: MainBundle\Entity\lat_users
    from_email:
    
    ...
&#13;
&#13;
&#13;

并且它说:

  

自动加载器预期类&#34; MainBundle \ Entity \ lat_users&#34;在文件&#34; / var / www / intranet / vendor / composer /../../ src / MainBundle / Entity / lat_users.php&#34;中定义。找到了该文件,但该类不在其中,类名或命名空间可能有拼写错误。

Idon不明白

1 个答案:

答案 0 :(得分:0)

您应该将[os].[version]-[architecture]-[additional qualifiers]放在配置中,因为MainBundle\Entity\User是表名而不是实体名。您的实体名称为lat_users,所以:

User

此外,作为最佳实践,请始终对PHP中的类名和别名使用 Singular CamelCase

替换:

...
fos_user:
    db_driver: orm # other valid values are 'mongodb' and 'couchdb'
    firewall_name: main
    user_class: MainBundle\Entity\User
    from_email:

    ...

作者

use FOS\UserBundle\Model\User as lat_users;

// ...

class User extends lat_users