我正在使用Symfony开发一个网站,这是我第一次接触这个框架。在此之前,我使用的是Laravel 5.0,并且需要一个具有行的数据库。
我使用命令提示符创建了我的数据库,但现在我找不到如何填充它的方法。
Symfony中是否有类似于Laravel Seeder的东西呢?
不,Seeding是Laravel添加的一个功能。你需要使用第三方包来加载种子/夹具到你的应用程序中:http://www.sitepoint.com/data-fixtures-symfony2/
这里的所有答案都有些过时了,而且这个问题在谷歌上是第一个结果,所以给未来的读者:
自从Symfony 3版本开始,有一个官方捆绑包专门用于此目的
使用symfony flex进行安装:composer require --dev orm-fixtures
如果没有使用flex:composer require --dev doctrine/doctrine-fixtures-bundle
然后在src/DataFixtures
中编写你的fixture,并运行php bin/console doctrine:fixtures:load
尝试使用这个包https://packagist.org/packages/evotodi/seed-bundle。看起来是你需要的。
他们的自述文件
Symfony / Doctrine Seed Bundle 用于从数据库中加载/卸载种子数据。例如,可以使用一个列表填充表格状态和缩写,或者使用初始管理员用户填充用户表格。与主要用于开发的DoctrineFixturesBundle不同,此包用于在最初推向生产之前填充数据库。