【发布时间】:2016-10-25 15:55:41
【问题描述】:
试图在 Laravel 中为日期创建一个 mutator 但它不起作用。
这是我的例子
public function getEventEndAttribute($date)
{
return Carbon::parse($date)->format('d.m.Y H:i')
}
例如,在我的用户模型中,我有这个完美运行的 mutator:
// convert email address to lowercase
public function getEmailAttribute($value) {
return strtolower($value);
}
因此,即使用户写一封带有大写字母的电子邮件,它也会被转换为小写......
我希望我的日期也一样...从 MySQL DB 格式转换为我的本地格式
这是从 SO 复制的,仍然无法正常工作。 请帮忙。
控制器
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Http\Requests;
use App\UserRequest;
use Carbon\Carbon;
use Auth;
use DB;
class UserRequestsController extends Controller
{
/**
* Display a listing of the resource.
*
* @return \Illuminate\Http\Response
*/
public function index()
{
//dd(DB::table('user_requests')->get());
return view('user-requests.index', ['userRequests' => DB::table('user_requests')->get()]);
}
/**
* Show the form for creating a new resource.
*
* @return \Illuminate\Http\Response
*/
public function create()
{
return view('user-requests.create');
}
/**
* Store a newly created resource in storage.
*
* @param \Illuminate\Http\Request $request
* @return \Illuminate\Http\Response
*/
public function store(Request $request)
{
//dd($request->event_end);
$this->validate($request, [
'event_name' => 'required|max:255',
'event_start' => 'required|date',
'event_end' => 'required|date',
]);
$userRequest = new UserRequest();
$userRequest->user_id = Auth::user()->id;
$userRequest->event_name = $request->event_name;
$userRequest->event_start = $request->event_start;
$userRequest->event_end = $request->event_end;
$userRequest->save();
return redirect('requests');
}
/**
* Display the specified resource.
*
* @param int $id
* @return \Illuminate\Http\Response
*/
public function show($id)
{
//
}
/**
* Show the form for editing the specified resource.
*
* @param int $id
* @return \Illuminate\Http\Response
*/
public function edit($id)
{
//
}
/**
* Update the specified resource in storage.
*
* @param \Illuminate\Http\Request $request
* @param int $id
* @return \Illuminate\Http\Response
*/
public function update(Request $request, $id)
{
//
}
/**
* Remove the specified resource from storage.
*
* @param int $id
* @return \Illuminate\Http\Response
*/
public function destroy($id)
{
//
}
}
【问题讨论】:
-
你遇到了什么错误?
-
没有错误...我只想从数据库中以本地格式制作日期。我得到这个 2016-10-27 14:51:00 而不是这个 27.10.2016 14:51
-
如何确保我什至调用了这个 mutator