Yii2夹具未卸载,未加载依赖项

Yii2夹具未卸载,未加载依赖项,yii2,yii2-advanced-app,Yii2,Yii2 Advanced App,卸载问题 我试图在Yii2中创建fixture,以便能够用一些测试数据填充我的表。我还没有使用Codeception。我在跟踪赛程。第一个表是用户表: namespace tests\unit\fixtures; use yii\test\ActiveFixture; /** * User fixture */ class UserFixture extends ActiveFixture { public $modelClass = 'common\models\User'; }

卸载问题

我试图在Yii2中创建fixture,以便能够用一些测试数据填充我的表。我还没有使用Codeception。我在跟踪赛程。第一个表是用户表:

namespace tests\unit\fixtures;

use yii\test\ActiveFixture;
/**
* User fixture
*/
class UserFixture extends ActiveFixture
{
    public $modelClass = 'common\models\User';
}
当我ssh到Vagrant并加载fixture时,这一个就可以工作了,但是在我卸载之后,条目仍然存在。根据终端输出,夹具已成功卸载。我错过了什么?这是开箱即用还是您应该创建自己的卸载功能

编辑: 将其添加到用户设备中有什么帮助:

public function unload(){
    parent::unload();
    $this->resetTable();
}
namespace tests\unit\fixtures;

use yii\test\ActiveFixture;

/**
 * User Libraries fixture
 */
class UserLibrariesFixture extends ActiveFixture
{
    public $modelClass = 'common\models\UserLibraries';

    // Dependencies
    public $depends = [
        'tests\unit\fixtures\UserFixture',
    ];
}
我希望这是目前在卸载无论如何,但我已经阅读了(非常缓慢)的讨论在下面的链接张贴。我不知道parent::unload()行是否必要,它在没有该行的情况下工作,但是BaseActiveFixture定义了它并清空$this->data和$this->\u models

取决于问题

我的第二个装置取决于用户装置:

public function unload(){
    parent::unload();
    $this->resetTable();
}
namespace tests\unit\fixtures;

use yii\test\ActiveFixture;

/**
 * User Libraries fixture
 */
class UserLibrariesFixture extends ActiveFixture
{
    public $modelClass = 'common\models\UserLibraries';

    // Dependencies
    public $depends = [
        'tests\unit\fixtures\UserFixture',
    ];
}
这一个也根据终端正确加载,但是UserLibraries表仍然为空。它没有说它将加载依赖项,但我不知道它是否应该说它将加载依赖项

我尽可能地简化了数据文件,正确的数据出现在用户表中。我只为UserLibraries表的必填字段添加了数据,所以我不知道这是否是一个问题。是否有日志文件可供我检查有关设备的条目

编辑: UserLibraries装置现在能够在用户表(但不是UserLibraries表)中创建数据,因此禁用外键检查适用于具有依赖关系的装置。这让我觉得我的UserLibraries数据文件中有一个错误。检查我是否需要一个日志文件

编辑2: 夹具加载问题解决方案


由于表名中有下划线,无法加载装置。当使用Gii创建时,表名userLibraries和user_libraries将生成文件名相同的模型、控制器和视图文件。使用camelcase名称表,我可以加载固定装置。

卸载固定装置是一个“正在讨论”的问题()。但这是我的mysql解决方案(我也在这里发表了评论),应该添加到每个具有依赖表的夹具模型中: