【发布时间】:2018-10-06 12:43:57
【问题描述】:
我有一个 Symfony 4 应用程序,它使用 Symfony\Component\Security\Core\User\UserInterface 来实现类来定义我的 User.php 实体。
我现在安装并配置了 FOSUserBundle,并更改了我的实体类以扩展 BaseUser 类。
<?php
namespace App\Entity;
use Doctrine\ORM\Mapping as ORM;
use FOS\UserBundle\Model\User as BaseUser;
/**
* @ORM\Entity
* @ORM\Table(name="`user`")
*/
class User extends BaseUser
{
/**
* @ORM\Id()
* @ORM\GeneratedValue(strategy="AUTO")
* @ORM\Column(type="integer")
*/
private $id;
/**
* @ORM\Column(type="string", length=180, unique=true)
*/
public function getId()
{
return $this->id;
}
}
但是现在当我运行php bin/console doctrine:migrations:genrate 然后doctrine:migrations:migrate 我得到:
“迁移已执行,但未产生任何 SQL 语句”。
我的配置(在 framework.yaml 中)是:
fos_user:
db_driver: orm
firewall_name: main
user_class: App\Entity\User
service:
mailer: fos_user.mailer.twig_swift
from_email:
address: "hello@example.com"
sender_name: "JW-App Mailer"
迁移版本保存到数据库,而不是用户实体。我的 User.php 实体中是否存在导致问题的原因?
【问题讨论】:
-
也许我在问一个愚蠢的问题,但您确定您的数据库中还没有
user表吗?如果是这样,不需要更新是正常的 -
公平的问题,但我肯定有一个新的迁移。我认为问题可能是生成命令,也许它会生成一些空的东西。
标签: php symfony doctrine-orm fosuserbundle