我有数据,想在视图中进行解析。
表名称为training
,它正在解析为如下所示的视图:
+--+------------+-------+-----------+----------+-------------------+--------------------+
|id|name |user_id|no_training|date |created_at |updated_at |
+--+------------+-------+-----------+----------+-------------------+--------------------+
|1 |software dev|3 |198734-2445|2018-06-20|2019-06-19 19:30:40|2019-06-19 19:30:40 |
+--+------------+-------+-----------+----------+-------------------+--------------------+
我想解析视图,以便'date'不是2019-06-19
,而是19-June-2019
或19-Juni-2019 (Indonesian(id) Time)
我需要为Controller或模型添加什么?
我的模特:
<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
class Training extends Model
{
protected $table = 'training';
protected $fillable = [
'user_id','name','no_training','date',
];
public function users()
{
return $this->belongsTo(\App\User::class ,'user_id');
}
}
我的控制器:
public function training()
{
$training = Training::with('users')->get();
return view('admin.training',['training' => $training]);
}
答案 0 :(得分:0)
您可以在训练模型中定义一些变体。
来自docs:
根据属性自定义日期格式
您可以自定义个别口才日期的序列化格式 通过在类型转换声明中指定日期格式来设置属性:
protected $casts = [ 'birthday' => 'date:Y-m-d', 'joined_at' => 'datetime:Y-m-d H:00', ];
所以就您而言。
如果将date
存储在日期列(Date
/ DateTime
)中,则可以执行以下操作:
Training.php
protected $casts = [
'date' => 'date:d-F-Y',
];
这应该返回如下内容:
“ 2019年6月23日”
您可以在Tinker中对其进行检查:
$ php artisan tinker
> now()->format('d-F-Y');
=> "23-June-2019"