【问题标题】:setting column type to json is not working during migration in laravel在 laravel 迁移期间将列类型设置为 json 不起作用
【发布时间】:2022-06-28 04:25:21
【问题描述】:

我正在构建一个 mysql databaselaravel 。在迁移文件中,我将一列设置为 json type ,但是当我使用此命令 php artisan migrate:fresh 创建 migration 时,数据库已成功创建,但我之前设置的列类型不正确迁移文件。下面是我的迁移文件代码。

public function up()
{
    Schema::create('questions', function (Blueprint $table) {
        $table->id();
        $table->json('conf');
        $table->timestamps();
    });
}

这里conf 列的类型不再是我的数据库中的json,而是迁移后的longtext type。为什么????。

【问题讨论】:

  • Laravel 将 JSON 列迁移到 LongText,没关系,你仍然可以在那里存储 json 数据

标签: laravel migration


【解决方案1】:

在表格的模型中添加它会对您有所帮助。

class Question extends Model
{
    protected $casts = [
        'con' => 'array',
    ];
}

它将列转换为可以循环的对象数组。

我希望这行得通

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-02-14
    • 2017-06-18
    • 2014-08-07
    • 1970-01-01
    • 2011-07-08
    相关资源
    最近更新 更多