与Nelmio Alice的Symfony 4灯具不坚持

Mar*_*tin 4 doctrine symfony nelmio-alice alice-fixtures symfony4

我在Symfony 4中使用Alice的数据夹具有问题.

当我运行bin/console doctrine:fixtures:load我被问到是否要清除db并最终命令终止而没有任何错误.

数据库被有效清除,但没有填充数据.

我正在使用Symfony 4.0.3,Doctrine Data Fixtures 1.3和Nelmio Alice 3.1.3.

SRC/DataFixtures/ORM/fixtures.yml

App\Entity\User:
user{1..10}:
    email: '<email()>'
Run Code Online (Sandbox Code Playgroud)

SRC/DataFixtures/ORM/LoadFixtures.php

namespace App\DataFixtures\ORM;

use Doctrine\Bundle\FixturesBundle\Fixture;
use Doctrine\Common\Persistence\ObjectManager;
use Nelmio\Alice\Loader\NativeLoader;


class LoadFixtures extends Fixture
{
    public function load(ObjectManager $manager)
    {
        $loader = new NativeLoader();
        $objectSet = $loader->loadFile(__DIR__.'/fixtures.yml');

    }
}
Run Code Online (Sandbox Code Playgroud)

SRC /实体/ user.php的

namespace App\Entity;

use Symfony\Component\Security\Core\User\UserInterface;
use Doctrine\ORM\Mapping as ORM;

/**
 * @ORM\Entity
 * @ORM\Table(name="user")
 */
class User implements UserInterface
{
    /**
     * @ORM\Id
     * @ORM\GeneratedValue(strategy="AUTO")
     * @ORM\Column(type="integer")
     */
    private $id;
    /**
     * @ORM\Column(type="string", unique=true)
     */
    private $email;

    ... and then various getters/setters methods
Run Code Online (Sandbox Code Playgroud)

我怀疑问题是数据没有被ObjectManager持久化.遗憾的是,Nelmio/Alice的文档中没有任何关于如何保持数据的信息. https://github.com/nelmio/alice#table-of-contents

如何确保数据持续存在?

slk*_*500 10

    class LoadFixtures extends Fixture
{
    public function load(ObjectManager $manager)
    {
        $loader = new Nelmio\Alice\Loader\NativeLoader();
        $objectSet = $loader->loadFile(__DIR__.'/Fixtures.yml')->getObjects();
        foreach($objectSet as $object) {
            $manager->persist($object);
        }
        $manager->flush();
    }
}
Run Code Online (Sandbox Code Playgroud)

自版本3以来,Alice已经发生了很大变化.