当前位置: 首页 > 知识库问答 >
问题:

禁用Laravel雄辩的时间戳

麻书
2023-03-14

我正在将我们的一个web应用程序从CodeIgniter转换为Laravel。然而,目前我们不想将updated_at/created_at字段添加到我们所有的表中,因为我们有一个日志类,它已经为我们做了更深入的工作。

我知道我可以设置$时间戳=false;在:

Vendor\laravel\framework\src\illuminate\Datebase\Eloquent\Model.php

然而,我宁愿不改变Laravel的核心文件,或者让我的每个模型都在顶部。有没有办法在其他地方禁用所有型号?

共有3个答案

谷梁镜
2023-03-14

如果您使用的是5.5.x:

const UPDATED_AT = null;

对于created_at字段,您可以使用:

const CREATED_AT = null;

确保您使用的是最新版本。(这在Laravel 5.5.0中被打破,并在5.5.5中再次修复)。

张高义
2023-03-14

只需在模型中放置此行:

public$timestamps=false

就这样!

例子:

<?php

namespace App;

use Illuminate\Database\Eloquent\Model;

class Post extends Model
{
    public $timestamps = false;

    //
}

要禁用一个操作的时间戳(例如,在控制器中):

$post->content = 'Your content'; 
$post->timestamps = false; // Will not modify the timestamps on save
$post->save();

要禁用所有模型的时间戳,请创建一个新的BaseModel文件:

<?php

namespace App;

use Illuminate\Database\Eloquent\Model;

class BaseModel extends Model
{
    public $timestamps = false;

    //
}

然后使用BaseModel扩展每个模型,如下所示:

<?php

namespace App;

class Post extends BaseModel
{
    //
}

万高洁
2023-03-14

您要么必须声明public$timestamps=false

更新:请注意,在LaravelV3之后,pivot表中不再需要时间戳。

更新:您还可以通过删除$table来禁用时间戳-

 类似资料:
  • 始终使用Laravel Elotent而不是原始SQL有什么好处吗? 我有一个习惯,首先在phpMyAdmin中编写SQL来检查关系,然后将其翻译成雄辩的ORM。 有时,翻译成雄辩的ORM是痛苦和耗时的,尤其是从长而复杂的SQL查询进行翻译。与使用雄辩的ORM相比,我能够用SQL快速编写。

  • 我是新来的拉威尔,我曾在codeigniter工作。我对雄辩的ORM概念着迷。我有一个关于雄辩能力的一般性问题。ORM的功能是什么,我的意思是我们可以获得相关表行的级别。如果你看“http://four.laravel.com/docs/eloquent#relationships 一对一 一对多 多对多 多态关系 在我看来,“一对一”意味着一级。表1表2

  • 在有说服力的ORM上,是否有一种较短的方法在Laravel中插入数据? 目前我正在这样做: 就像你看到的,所有的列都像属性一样命名。 我知道您可以将对象与all()函数和fetch()一起使用。但是我从另一个对象(soap服务器)获取数据。 有没有办法转换这个?也许在模型上?

  • 我在使用laravel雄辩的ORM时遇到了一个问题。 基本上,我正在获取与用户相关的帖子,以及他的评论,但是,我正在尝试集成某种分页(我一次只想取5个帖子)。 而使用跳过方法,我总是得到以下laravel错误: 方法skip不存在。 这是我实际使用的代码片段。 有人能给我任何帮助吗? 帐户模型检索与用户相关的帖子模型(关系),但是,我想一次只收到5个帖子,用于基于ajax的请求。

  • 我有以下三个表格: 所以基本上这种关系就像: 用户有许多项目 项目属性到客户端 我的问题是: 如何使用eloquent获得用户的所有客户端? 似乎我不能用户hasManyPass方法,因为在客户端表中没有project_id。 因此,我希望达到的目标是:

  • 嘿,伙计们,我是拉威尔的新朋友。我有这张桌子 我如何能够获取每个科目的is_correct列计数? 谢谢伙计们!