kupishkis / doctrine-fixtures-module
该包的最新版本(1.1.3)没有提供许可信息。
Zend Framework 2 与 Doctrine Fixtures 库的集成
1.1.3
2018-01-25 15:44 UTC
Requires
- php: ^7.1
- doctrine/data-fixtures: ^1.3.0
- doctrine/doctrine-module: ~0.7
- symfony/console: ^2.8 || ^3.0
- zendframework/zendframework: 2.*
README
关于
KupDoctrineFixtures 模块提供了 ZF2 与 Doctrine Fixtures 库的集成。与 EwgoDoctrineFixtures 的不同之处在于,该模块实际上支持从单个文件加载 fixtures。
安装
$ php composer.phar require kupishkis/doctrine-fixtures-module
将 "KupDoctrineFixtures" 添加到已加载模块列表中。
配置
在模块配置中添加 fixtures 的路径
array( 'doctrinefixtures' => array( 'paths' => array( 'MyModule' => __DIR__ . '/../src/MyModule/DataFixtures/ORM' ) ) )
用法
创建您的 fixture 类。
您可以在 fixture 类中实现 Zend\ServiceManager\ServiceLocatorAwareInterface 以使用 ServiceManager。
您还可以直接扩展 EwgoDoctrineFixtures\Fixture\ServiceLocatorAwareAbstractFixture 以获得 ServiceLocatorAwareInterface 和 AbstractFixture 的好处。
namespace MyModule\DataFixtures\ORM; use KupDoctrineFixtures\Fixture\ServiceLocatorAwareAbstractFixture; use Doctrine\Common\Persistence\ObjectManager; use MyModule\Entity\User; class LoadUserData extends ServiceLocatorAwareAbstractFixture { public function load(ObjectManager $manager) { // Encode the password any way you want $password = $this->serviceLocator->get('MySuperEncoder')->encode('myAwesomePassword'); $user = new User(); $user->setUsername('test'); $user->setPassword($password); $user->setPassword('test@test.com'); $manager->persist($user); $manager->flush(); } }
$ vendor/bin/doctrine-module fixtures:load
查看帮助 (--help) 了解选项。
有关更多信息,请参阅 Doctrine Fixtures 文档。