1

日付入力を適切な mysql 形式に変換しようとしています。start_date フィールドの形式は MM dd, yyyy です。

私のコントローラーストア関数では、start_date と保存を含むすべてのユーザー入力を取得しています。

$userProfileData->save();

私ができると思ったのは、このように保存する前に Carbon で start_date を変換することです。

$userProfileData->start_date->toDateString();

オブジェクト以外のエラーでメンバー関数 toDateString() への呼び出しを取得します。

4

2 に答える 2

5

これをユーザーのコントローラーストア関数に追加することで、日付形式を変換できました。

$userProfileData->start_date = date('Y-m-d', strtotime($userProfileData->start_date));
于 2014-09-17T15:52:41.803 に答える
4

start_date はメソッド toDateString() を持つオブジェクトではないため、非オブジェクトエラーが発生します

できることは、モデルで setStartDateAttribute() メソッドを使用して start_date 属性値を取得するたびに呼び出されることです。このメソッドでは値を変更できるため、モデルは編集や更新などの操作に更新された値を使用します。従う

public function setStartDateAttribute($value) {
      $this->attributes['start_date'] = date('Y-m-d', strtotime($value) );
}

次のメソッドは、start_date 属性の値を取得する必要がある場合にモデルによって使用されます。このメソッドはモデルに記述する必要があります。

于 2014-09-17T13:16:25.593 に答える