日期字段

时区

Nova 提供 2 种日期字段:DateDateTime。正如你已经猜到的,Date 字段不存储时间信息,但 DateTime 字段存储时间信息:

use Laravel\Nova\Fields\Date;
use Laravel\Nova\Fields\DateTime;

Date::make('Birthday')
DateTime::make('Created At')

时区

默认情况下,Nova 用户看到的日期总是以基于用户浏览器区域信息的本地时区呈现。

此外,用户可随时以用户所在本地时区设置日期。日期将被自动转化为你的应用程序“服务器端”的时区,该时区由你的应用程序 app 配置文件中的 timezone 选项定义。

自定义时区

有时你可能希望明确定义 Nova 用户的时区,而不是使用用户浏览器的区域设置信息。例如,也许你的应用程序允许用户选择用户自己的时区,这样用户即使在世界各地旅行也总能看到一致的日期时区。

为此,你可以使用 Nova::userTimezone 方法。通常,你应该在你的应用程序 NovaServiceProvider 中的 boot 方法中调用这个方法:

use Laravel\Nova\Nova;
use Illuminate\Http\Request;

/**
 * 引导任何应用程序服务。
 *
 * @return void
 */
public function boot()
{
    Nova::userTimezone(function (Request $request) {
        return $request->user()->timezone;
    });
}

本文章首发在 LearnKu.com 网站上。
上一篇 下一篇
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
贡献者:2
讨论数量: 0
发起讨论 只看当前版本


暂无话题~