【发布时间】:2018-02-08 00:03:34
【问题描述】:
laravel voyager 很酷,但是如何将这些表\设置\面包从开发迁移到产品实例?尤其是一次开发,多次部署,怎么能优雅地完成呢?
对于 laravel,本机数据库迁移/播种器非常适合此目的
【问题讨论】:
laravel voyager 很酷,但是如何将这些表\设置\面包从开发迁移到产品实例?尤其是一次开发,多次部署,怎么能优雅地完成呢?
对于 laravel,本机数据库迁移/播种器非常适合此目的
【问题讨论】:
我建议使用 3rd 方工具从您现有的数据库表中生成迁移和种子。
生成迁移:https://github.com/Xethron/migrations-generator
生成种子:https://github.com/orangehill/iseed
像 DataRowsTableSeeder.php 这样的文件已经由 Voyager 创建 - Iseed 将要覆盖它们。如果您不能接受,我创建了一个 fork+pull 请求,允许您在运行 Iseed 时显式指定文件/类名:https://github.com/mattrabe/iseed
【讨论】:
对于迁移,只需创建迁移并运行迁移命令。
对于 BREAD,请使用 this 包,该包将侦听 Voyager BREAD(添加、更新、删除)事件并生成相应的种子文件。
【讨论】:
目前没有办法。目前最好的希望是导出关键表,例如菜单、面包和角色的表,然后在生产环境中导入它们(当然要确保维护模式已打开)。
如果他们能以某种 JSON 格式为to store central configuration 提供一种方式,以便将其包含在源代码管理中,那就太好了。
【讨论】: