Php 在$request laravel中插入带有日期的列

Php 在$request laravel中插入带有日期的列,php,laravel,date,controller,Php,Laravel,Date,Controller,我使用的是Laravel5.2,我用Ajax提交了一个表单,用于在表中插入数据。 这是我在控制器中的功能: public function saveChange(Request $request) { if($request->ajax()) { Affectationabc::create($request->all()); return response()->json(

我使用的是Laravel5.2,我用Ajax提交了一个表单,用于在表中插入数据。 这是我在控制器中的功能:

public function saveChange(Request $request) {
            if($request->ajax()) {
                    Affectationabc::create($request->all());
                    return response()->json([
                            'testdata' => $request->all()
                    ]);
            }
    }
我想在其他两列中同时添加今年的第一天和最后一天

我试着这样做:

public function saveChange(Request $request) {
            if($request->ajax()) {
                    $firstDay = date('l',strtotime(date('Y-01-01')));
                    $lastDay = date('l',strtotime(date('Y-12-31')));
                    $request->merge(array('HISTO_AFFECT_DATE_DEB' => $firstDay, 'HISTO_AFFECT_DATE_FIN' => $lastDay));
                    Affectationabc::create($request->all());
                    return response()->json([
                            'testdata' => $request->all()
                    ]);
            }
    }
但它不起作用,可能是因为日期的格式。我的列HISTO_impact_DATE_DEB和HISTO_impact_DATE_FIN是格式为Y-m-d的日期

请问我怎么做

编辑:

我的模型可能有问题,这是我的代码:

use Illuminate\Database\Eloquent\Model;

class Affectationabc extends Model
{
protected $table = "Histo_AFFECT_ABC";
protected $primaryKey = 'HISTO_AFFECT_ID';

const CREATED_AT = 'HISTO_AFFECT_DATE_CREA';
const UPDATED_AT = 'HISTO_AFFECT_DATE_MAJ';

protected $dates = ['HISTO_AFFECT_DATE_CREA','HISTO_AFFECT_DATE_MAJ','HISTO_AFFECT_DATE_DEB','HISTO_AFFECT_DATE_FIN'];

protected function getDateFormat()
{
    return 'Y-m-d';
}


protected $fillable =  [
    'HISTO_AFFECT_ID_CATEG',
    'HISTO_AFFECT_ID_PERSONNEL',
    'HISTO_AFFECT_DATE_DEB',
    'HISTO_AFFECT_DATE_FIN',
    'HISTO_AFFECT_COMMENTAIRES',
    'HISTO_AFFECT_DATE_CREA',
    'HISTO_AFFECT_DATE_MAJ'
];


public function setHistoAffectDateDebAttribute($value)
{
    $this->attributes['HISTO_AFFECT_DATE_DEB'] = \Carbon\Carbon::createFromFormat('d/m/Y', $value)->format('Y-m-d') ;
}

public function setHistoAffectDateFinAttribute($value)
{
    $this->attributes['HISTO_AFFECT_DATE_FIN'] = \Carbon\Carbon::createFromFormat('d/m/Y', $value)->format('Y-m-d') ;
}
}

EDIT2:当我尝试添加此日期时,似乎出现了错误500

您没有告诉任何人您会遇到什么错误,但如果是与日期相关的错误,请尝试使用:


我的模型中有两个函数产生了冲突:

public function setHistoAffectDateDebAttribute($value)
{
$this->attributes['HISTO_AFFECT_DATE_DEB'] = \Carbon\Carbon::createFromFormat('d/m/Y', $value)->format('Y-m-d') ;
}

public function setHistoAffectDateFinAttribute($value)
{
$this->attributes['HISTO_AFFECT_DATE_FIN'] = \Carbon\Carbon::createFromFormat('d/m/Y', $value)->format('Y-m-d') ;
}
我删除了它们,并在控制器中执行了以下操作:

public function saveChange(Request $request) {
            if($request->ajax()) {
                    $firstDay = Carbon::now()->startOfYear()->format('Y-m-d');
                    $lastDay = Carbon::now()->endOfYear()->format('Y-m-d');
                    $request->merge(array('HISTO_AFFECT_DATE_DEB' => $firstDay, 'HISTO_AFFECT_DATE_FIN' => $lastDay));
                    Affectationabc::create($request->all());
                    return response()->json([
                            'testdata' => dd($request->all())
                    ]);
            }
    }

一切都很完美!我在日志中发现了错误,谢谢大家

$firstDay=日期('Y-01-01');$lastDay=日期('Y-12-31');如果工作是很抱歉,但我什么也没看到,我只是看到请求没有正确执行,因为没有新的enbtry…您可以在
storage\logs\laravel.log
中查看最后一条错误消息。您是否尝试使用我的答案中的代码?我找到了解决方案,您的代码工作得很好,但我的控制器2函数在注册前设置了此值,并产生了冲突,我在我的模型中删除了它们*不在我的控制器中抱歉
public function saveChange(Request $request) {
            if($request->ajax()) {
                    $firstDay = Carbon::now()->startOfYear()->format('Y-m-d');
                    $lastDay = Carbon::now()->endOfYear()->format('Y-m-d');
                    $request->merge(array('HISTO_AFFECT_DATE_DEB' => $firstDay, 'HISTO_AFFECT_DATE_FIN' => $lastDay));
                    Affectationabc::create($request->all());
                    return response()->json([
                            'testdata' => dd($request->all())
                    ]);
            }
    }