首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从迁移文件中运行Phinx种子

从迁移文件中运行Phinx种子
EN

Stack Overflow用户
提问于 2021-11-18 18:48:24
回答 1查看 262关注 0票数 1

我正在编写一组Phinx迁移,安装应用程序数据库并插入种子。我的前4个迁移文件分别构建了数据库模式(带有外键约束)、触发器、函数和存储过程。我想使用第五个迁移文件来执行所有的种子,这样以后的每个迁移文件都会有种子数据来处理。

我想要一个从Phinx迁移文件的up方法中运行所有应用程序种子的示例。

EN

回答 1

Stack Overflow用户

发布于 2022-10-25 10:07:15

从迁移文件中执行种子器:

代码语言:javascript
复制
public function change()
{
    $table = $this->table('migration_test');
    $table->addColumn('example', 'string', ['limit' => 10]);
    $table->create();

    exec('/usr/local/bin/php ./vendor/bin/phinx seed:run --seed=MySeeder');
}

另一种从迁移文件运行播种机的方法:

代码语言:javascript
复制
<?php
declare(strict_types=1);
$namespaceDefinition
use $useClassName;

require_once __DIR__ . '/../seeds/SeederName.php';

final class $className extends $baseClassName
{
    public function up()
    {
        (new SeederName())
            ->setAdapter($this->getAdapter())
            ->setInput($this->getInput())
            ->setOutput($this->getOutput())
            ->run();
    }

    public function down()
    {
        // probably truncate
    }
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70025190

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档