2017-09-11 7 views
0

データベースに日付を保存します。しかし、私は、私の日付がnullであると言うエラーを取得します。laravel 5.4でdatepickerをdatabseに保存するにはどうすればよいですか?

public function store(Request $request) 
{ 

    $slot = new Slot; 
    $slot->ps_name = Auth::guard('ps')->user()->name; 
    $slot->date = $request->date; 
    $slot->time = $request->time; 
    $slot->area = $request->area; 
    $slot->duration = $request->duration; 


    $slot->save(); 
return view('pshome'); 
} 

スロットデータベース

Schema::create('slot', function (Blueprint $table) { 
     $table->increments('id'); 
     $table->string('ps_name'); 
     $table->DateTime('date'); 
     $table->integer('time'); 
     $table->integer('duration'); 
     $table->string('area'); 
     $table->timestamps(); 
    }); 

答えて

0

すべてのフィールド型の最初のテーブルの上にあなただけの店日時場合日時及び「日」の両方に「日時」(小文字)です。テーブルの日付フィールドが日付と時刻の両方がある場合は、$requestにあなたの日付時刻形式を仮定すると、「M/D/Y」、

です(例:2017年9月11日午前10時00分00秒)

$slot->date = \Carbon\Carbon::createFromFormat('m/d/Y', $request->date)->format('Y-m-d H:i:s');

テーブルの日付フィールドが日付のみ(例:2017年9月11日)であれば、要求$request上の日付がである場合

$slot->date = \Carbon\Carbon::createFromFormat('m/d/Y', $request->date)->format('Y-m-d');

"はYmd H:I:S" または "はYmd" (フィールドのタイプに依存します)直接割り当てることができますn。(あなたの方法と同じ)

+0

(1/1)InvalidArgumentExceptionのデータが失われます。データが欠落しているとはどういう意味ですか? –

+0

data missingは、 'createFromFormat'で使用した日付形式と要求時の実際の形式が異なることを意味します。 'dd($ request-> date);'を追加し、要求に応じた正しいフォーマットを見つけてください –

関連する問題