laravel 如何控制自动更新时间的两个字段

在laravel 5.5.*中,可以通过设置常量关闭`created_at`和`updated_at`字段的自动更新。若仅保留其中一个,可设置其中一个的值为`null`。此外,可修改时间字段名称,并利用Carbon对象灵活控制时间格式。在数据库迁移中也可进行配置,laravel内置Carbon库方便时间处理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

laravel version: 5.5.*

关闭自动更新时间字段

因为laravel的模型会自动更新 created_atupdated_at (默认是两个这样的名字)两个字段

  • 如果不想要这两个字段可以 关闭
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Support\Facades\App;
class User extends Model
{
    $timestamps = false;
}

关闭其中一个字段保留另一个

  • 只想要其中一个字段 created_at 只需要将定义一个常量将 updated_at 的值设置为 null 即可
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Support\Facades\App;
class User extends Model
{
    const UPDATED_AT = null;
}
  • 如果你使用的数据库迁移(migration) 在迁移的时候也可以设置
class CreateUsersTable extends Migration {
    public function up() {
        Schema::create('users', function(Blueprint $table) {
        $table->timestamp('created_at')->default(DB::raw('CURRENT_TIMESTAMP'));
    });
}

修改某个字段的名称

namespace App\Models;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Support\Facades\App;
class User extends Model
{
    const CREATED_AT = 'create_time';
    const UPDATED_AT = 'update_time';
}

使用

lavavel返回的时间不是单纯的字符串,而是一个 carbon 对象, 因为是一个对象,可以更加灵活的控制时间显示的格式, laravel 默认安装了这个包, 所以可以在laravel框架中可以直接使用, 在模板中也能直接使用

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值