laravel version: 5.5.*
关闭自动更新时间字段
因为laravel的模型会自动更新 created_at
和 updated_at
(默认是两个这样的名字)两个字段
- 如果不想要这两个字段可以 关闭
namespace AppModels;
use IlluminateDatabaseEloquentModel;
use IlluminateSupportFacadesApp;
class User extends Model
{
$timestamps = false;
}
关闭其中一个字段保留另一个
- 只想要其中一个字段
created_at
只需要将定义一个常量将updated_at
的值设置为null
即可
namespace AppModels;
use IlluminateDatabaseEloquentModel;
use IlluminateSupportFacadesApp;
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 AppModels;
use IlluminateDatabaseEloquentModel;
use IlluminateSupportFacadesApp;
class User extends Model
{
const CREATED_AT = 'create_time';
const UPDATED_AT = 'update_time';
}
使用
lavavel返回的时间不是单纯的字符串,而是一个 carbon
对象, 因为是一个对象,可以更加灵活的控制时间显示的格式, laravel 默认安装了这个包, 所以可以在laravel框架中可以直接使用, 在模板中也能直接使用