Laravel / Lumen 框架修改 创建时间 和 更新时间 对应字段
为避免浪费时间……先上解决方案
在Model中重写 CREATED_AT 和 UPDATED_AT 两个类常量就可以了,这两个常量分别是创建时间和更新时间的字段名。
===============================================
以下只是简单的介绍和十分逗比的解决过程
Laravel 是十分强大的全栈PHP框架,其衍生品 Lumen 则更加专精一些,官方将其定位在微服务和API开发领域。
Lumen 也是我目前采用的 API 开发框架,作为 Laravel 的子集,Lumen同样可以使用强大的 Eloquent ORM。
Laravel 的 Eloquent ORM 提供了漂亮、简洁的 ActiveRecord 实现来和数据库进行交互。每个数据库表都有一个对应的「模型」可用来跟数据表进行交互。你可以通过模型查询数据表内的数据,以及将记录添加到数据表中。
原文
问题
Eloquent 中使用了大量的约定来减轻开发者的负担,比如本次要提到的'创建时间'和'更新时间'字段
默认情况下,Eloquent 会认为在你的数据库表有 created_at 和 updated_at 字段。如果你不希望让 Eloquent 来自动维护这两个字段,可在模型内将 $timestamps 属性设置为 false
原文
通常来讲,我们只要按照这些约定来设计数据库和模型就好了,在数据表中建立created_at 和 updated_at 字段,然后就不用操心别的了~
但总有些特殊场景让我们无法遵从约定,比如我手上的项目,数据表结构由合作团队的人员设计好了,创建时间和更新时间分别是 createtime 和 updatetime ,而且对方已经开发上了……再让人家改字段名显然也不太合适。
中文教程文档上看起来没有提如何修改字段……那就翻翻API文档吧……
果然API文档里找到了两个常量:
CREATED_AT 和 UPDATED_AT;
看介绍,这两个值就是我想要的字段名了。遂重写之。可用。喜。
原本以为教程文档上就是不全,关键时刻还是要去查API文档,然而事后去翻了一下官方的英文文档……
If you need to customize the names of the columns used to store the timestamps, you may set the CREATED_AT and UPDATED_AT constants in your model
这TM不就写着呢吗(╯‵□′)╯︵┻━┻
这个故事告诉我们……翻译出来的文档上未必就是齐全的……翻译文档上没写的内容未必就是原文没有的……
Laravel / Lumen 框架修改 创建时间 和 更新时间 对应字段的更多相关文章
- spring data jpa之Auditing 表的创建时间,更新时间自动生成策略
java实际编程中,几乎每一张表都会有createTime和updateTime字段,spring的优秀之处在于只要用几个注解,就帮我们解决该类问题,具体实现: 1,实体类添加注解: @EntityL ...
- JPA注解实体类,给表添加创建时间,更新时间,id的生成以及创建唯一约束
首先创建一个BaseModel,自动生成创建时间和更新时间 @SuppressWarnings("serial") @MappedSuperclass public class B ...
- C#获得指定目录床架时间、更新时间和最后访问时间等信息的代码
将做工程过程常用的内容片段备份一次,下面的内容内容是关于C#获得指定目录床架时间.更新时间和最后访问时间等信息的内容,希望能对小伙伴们也有用. using System;using System.IO ...
- django学习-24.创建时间和更新时间的添加
目录结构 1.前言 2.入参auto_now和入参auto_now_add 2.1.入参auto_now的相关知识点 2.2.入参auto_now_add的相关知识点 3.完整的操作流程 3.1.第一 ...
- Spring Date Jpa on update current_timestamp 自动维护创建时间和更新时间
在数据库里设置默认值current_timestamp可以维护创建时间,设置on update current_timestamp 可以维护更新时间.在JPA中应该如何去做呢?这里还是以上篇Topic ...
- mysql中创建时间和更新时间的区别
`create_time` ) NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `update_time` ) ) COMMENT '更新时间', 而在界 ...
- mysql 表字段 记录创建时间和更新时间
sql语句创建: CREATE TABLE `NewTable` ( `id` int NOT NULL AUTO_INCREMENT , `name` varchar(20) NOT NULL , ...
- 创建时间和更新时间两个选一个的情况和select case when ... then ... else ... end from 表 的使用
1.查询时间,如果更新时间update_time为空就查创建时间create_time,否则查更新时间update_time select update_time,create_time, case ...
- MySql自动默认时间及更新时间
注意:5.7 才能用类型为datetime的字段实现 `create_time` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `modifie ...
随机推荐
- displayport-2
上一章讲述了display-port的硬件连接,今天来说说协议层 图中可以看到,最底层是物理层,上层是连接服务层,提供的服务包括同步数据传输服务,aux链接服务,aux设备数据传输服务,在设备端也一样 ...
- java学习(二)--excel导出
public static String writeFile(String fileName, String[][] content) { WritableWorkbook wwb = null; S ...
- u-boot源码下载
1. 使用git下载u-boot源码 1.1 clone u-boot源码仓库 可以使用git.HTTP.和 rsync协议来下载u-boot源码.你可以使用如下方法来克隆源码树: $ git cl ...
- UVa 10176 - Ocean Deep ! - Make it shallow !!
题目大意:判断一个很大的二进制能否被131071整除.在二进制转十进制的过程中不断取模,最后判断结果是否是0就可以了. #include <cstdio> #include <cst ...
- Myeclipseforspring 10破解
破解包和说明下载网址:http://ishare.iask.sina.com.cn/f/33848276.html?all=y
- sql语句:CASE WHEN END 的用法
select b,c, CASE a ' ' ' end from test1
- tomcat 修改端口(Java之负基础实战)
1.找到server.xml tomcat 安装路径/config/server.xml 2.搜索8080 修改成想要的端口号 3.重启tomcat
- 关于android:id="@+id/xx"的理解
之前学习android的时候,对android:id="@+id/xx"总感觉混淆,不理解,刚看了一篇文章.现在貌似是恍然大悟.故做了一下笔记,希望帮助有共同问题的人... and ...
- ThinkPHP 模板的包含、渲染、继承
一.模板包含 <include file="完整模板文件名" /> <include file="./Tpl/default ...
- adb server无法启动方法,结束占用端口的进程
adb server is out of date. killing...ADB server didn't ACK* failed to start daemon *error: unknown ...