我可能完全误解了它是如何工作的,但实现这一目标的最佳方法是什么?我有一些想法,但它似乎很hacky。
我有一组用于测试我的应用程序的示例数据。这是通过 Laravel 内置的播种机播种的。这包含示例用户、地址、文档等内容。
我还有一组应该投入生产的默认数据。我目前直接在迁移中添加它。例如,如果我要为 account_roles 添加一个表,我可能会在迁移的底部包含以下内容
$account_admin = array('role' => 'Account Administrator', 'flag' => 'ACCOUNT_ADMIN');
$account_owner = array('role' => 'Account Administrator', 'flag' => 'ACCOUNT_OWNER');
DB::table('account_roles')->insert($account_admin);
DB::table('account_roles')->insert($account_owner);
这样,在生产环境中,我只需迁移数据库以插入任何可用于生产环境的数据库值,而在暂存/开发环境中,我可以刷新迁移,然后使用示例数据为数据库播种。
还有其他(更好的)方法可以做到这一点吗?