这是我的控制器
public function DriverProcess()
{
$DriverData = Input::all();
$validation = Validator::make($DriverData, DriverModel::$rules);
if ($validation->passes())
{
DriverModel::create($DriverData);
//Rest of Code
这是我的模型
<?php
class DriverModel extends Eloquent
{
protected $guarded = array('DriverName');
protected $fillable = array('DriverName', 'Age', 'Address', 'LicenseNumber', 'DateOfBirth', 'LicenseExpiry' );
在现场DateOfBirth
和LicenseExpiry
我发送日期的值作为dd/mm/yyyy
格式
当我发送使用模型DriverModel::create($DriverData);
并使用fillable
时,我不知道在哪里将dd/mm/yyyy
转换为yyyy/mm/dd
注意:
我知道通过date("Y-m-d", strtotime($var) );
转换日期格式,但我需要知道在哪里可以执行此操作。
您可以在模型中为此使用突变器(请参阅 http://laravel.com/docs/4.2/eloquent#accessors-and-mutators(。在您的情况下,这将是:
public function setDateOfBirthAttribute($value)
{
$this->attributes['DateOfBirth'] = date("Y-m-d", strtotime($value) );
}
作为旁注,您应该只在模型中使用$fillable
或$guarded
。现在,您在$guarded
和$fillable
中设置了相同的属性。