日期字段

未匹配的标注

时区

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 网站上。

本译文仅用于学习和交流目的,转载请务必注明文章译者、出处、和本文链接
我们的翻译工作遵照 CC 协议,如果我们的工作有侵犯到您的权益,请及时联系我们。
上一篇 下一篇
《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
贡献者:2
讨论数量: 0
发起讨论 只看当前版本


暂无话题~