나는 나의 VitalSignSet 모델이 있습니다 Laravel 5.3 탄소 (C) 날짜 형식이 반환 될 때 설정되지 않습니까?
class VitalSignSet extends Model
{
protected $dates = [
'datetimetaken',
];
. . .
}
지금 내 기능에 내가 최신 활력 징후 세트 json으로 인코딩 된 만남을 반환이 기능을 가지고있다. (Encounter에는 VitalSignSet과 hasMany 관계가 있습니다.)하지만 돌아 오기 전에
datetimetaken
필드를 인간의 가독성을 위해 형식화해야하지만이 특정 메서드에만 사용하고 싶습니다. (따라서 접근자를 사용하지 않은 이유입니다)
public function get(Request $request, Encounter $encounter) {
// Setting the latest vital sign set
$encounter->latest_vitals = $encounter->VitalSignSets()
->orderBy('datetimetaken','desc')->get()->first();
// Formatting the date :
// Works when just returning the date.
// Does not return in this format when returning the model with the date.
$encounter->lastest_vitals->datetimetaken->format('M j, Y');
return $encounter->toJson();
}
위의 메서드는 js ajax 요청에서 액세스됩니다. 구문 분석하고 응답을 기록 할 때 datetimetaken 형식은 변경되지 않았습니다. (여전히 YYYY-mm-dd H:i:s
형식) 그러나 서식을 지정한 후 $encounter->latest_vitals->datetimetaken;
을 반환하면 설정 한 형식으로 문자열이 반환됩니다. 그러나 포함 된 VitalSignSet 모델 $encounter->latest_vitals;
(json 응답)을 반환하면 형식은 YYYY-mm-dd
입니다. 왜 그런가요?