我在文档中进行了搜索并摆弄了Laravel代码但却一无所获。我使用的是Laravel 5.1。
我想知道我是否可以扩展Schema :: create函数或者在反向迁移方面做些什么。我想恢复迁移期间设置的字段和类型,并将它们输出到每个迁移文件的json文件(有很多)。 该文件将在angular formly中使用。 这样我就可以在迁移命令期间生成所有内容。
我认为重复每次迁移的代码并不是最好的方法。有什么想法吗?
class CreatePlanTypesTable extends Migration
{
public function up()
{
Schema::create('plan_types', function (Blueprint $table)
{
$table->increments('id');
$table->string('name');
$table->string('slug');
$table->dateTime('created_at');
$table->dateTime('updated_at');
// ---- dont want to repeat for each migration file -----
$json = [];
$columns = $table->getColumns();
foreach($columns as $column)
{
$json[] = [
'key' => $column['name'],
'type' => $column['type'],
'templateOptions' => [
'label' => '',
'placeholder' => ''
]
];
}
file_put_contents('tablefile.json', json_encode($json));
// -------------------
});
}
...