问题描述
我在迁移过程中遇到问题。 总结我的工作,我创建了:
-
具有属性的用户实体:$id、$username、$password、$email 和 $role(具有 Role 实体的外键关系 ManyToOne):user.php
-
具有属性的角色实体:$id,$role(类型关系 OnetoMany 与 User 实体) 创建关系时,在方法 addRole 和 removeRole 中创建了 2 个错误:addRole error msg
-
类 User 由 UserInterface 实现,因此默认需要以下 5 个方法: (getRoles(),getpassword(),getSalt(),getUsername(),eraseCredentials() )
-
我在 CLI 中安装了 DataFixture 包,以便在 UserFixture 实体中创建假配置文件用户。 虚假个人资料的创建方式如下:UserFixture.php
公共函数加载(ObjectManager $manager)
{
// Création d'un utilisateur admin pour test dans BDD :
$user = new User();
$user->setUsername('admin');
$user->setPassword(
$this->encoder->encodePassword($user,'monmotdepasse')
);
$user->setEmail('monemail@monemail.fr');
$manager->persist($user); // sauvegarde de la donnée avant envoi BDD
$manager->flush();
} -
第一个问题:我想在这个 UserFixture 上添加角色属性,因为我在角色实体中设置了角色属性不能为空,但是当我尝试在加载函数上添加该行时:
$user->setRole('ROLE_ADMIN');
Symfony 不允许 => 错误预期类型 'null|App\Entity\Role'。找到 'string'.intelephense(1006) -
我尝试在 CLI 上启动迁移和迁移,除此之外还收到以下错误消息:
SQLState Error
如果有人可以帮助我了解问题的出处?
谢谢您的帮助。
Ps:UML > UML
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)