【问题标题】:Laravel: give longText field a default valueLaravel:给 longText 字段一个默认值
【发布时间】:2020-08-04 20:12:53
【问题描述】:

非常简单,在 laravel 中我不能给 longText 或文本字段一个默认值,给定一个名为“body”的字段,其中 body 可能有一些文本或 html,我如何在 mysql 中给它一个默认值?

【问题讨论】:

标签: javascript php laravel vue.js


【解决方案1】:

如 cmets 中所述,mysql 在默认值和文本方面存在限制。相反,您可以通过代码进行设置。在将任何内容保存到数据库之前,将触发 creating 事件。您可以使用 boot 函数挂钩并在模型上设置默认值。

class YourModel
{
    protected static function boot()
    {
        parent::boot();

        static::creating(function ($model) {
            $model->body = '<body></body>';
        });
    }
}

这个也可以通过observers来完成,比较全面一点。避免在启动 method() 中执行太多逻辑,这很快就会变得拥挤。

【讨论】:

    猜你喜欢
    • 2020-12-26
    • 2018-07-02
    • 2018-02-07
    • 1970-01-01
    • 2021-12-11
    • 2017-08-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多