0

我有一个简单的 L5 应用程序,我必须用不同的语言输出一些日期,因此我使用jenssegers/laravel-date 包

但是,如果我尝试对存储在数据库中的数据使用 jenssegers 新包,我不会得到翻译,请参见此处:

index.blade.php

@extends('app')

@section('content')

use Jenssegers\Date\Date;
// This returns 'vor 0 Sekunden' in German, which I do want.
echo Date::now()->diffForHumans();

echo '<br/>';

// This returns '1 day ago'. It is in English, but I need it in German.
echo $orders->find(1)->created_at->diffForHumans();

@endsection

将不胜感激任何帮助。

4

1 回答 1

2

发生这种情况的原因是$orders->find(1)->created_at返回一个Carbon实例,而不是Date一个。

杠杆作用的一种方法Date是这样做:

echo Date::instance($orders->find(1)->created_at)->diffForHumans();

您可以使用访问器始终返回 Date 对象,如下所示:

在您的订单模型中:

public function getCreatedAtAttribute($value)
{
    return Date::instance($value);
}
于 2015-04-15T20:05:22.347 回答