モデルのReview
は、そのうちの1つ(テーブルcolumms)としてunixタイムスタンプを持っています。Laravel Eloquentアクセサがレスポンスに表示されないのはなぜですか?
私は、このモデルの内側に2 accessorsを使用します。
public function getReviewDateAttribute($value)
{
return strftime('%A %e %B %Y', $value);
}
public function getReviewDateIsoAttribute()
{
return Carbon::createFromTimestamp($this->review_date)->toDateTimeString();
}
getReviewDateAttribute
は期待通りに動作し、私は、クエリを記述する際にモデルのコレクションに表示されます。
ただし、getReviewDateIsoAttribute
はありません。これの理由は何でしょうか? サブクエリ:両方の関数で同じ属性を使用する場合、どのように入力値として元の形式を使用できますか?
私はあなたが何を言おうとしているのか理解していますが、Laravelのアクセサは、その場で属性を作成する「魔法の」関数なので、これでも動作するはずです。ドキュメントの 'getFullNameAttribute'の例を見てください。 –
クエリの構造と関係があります。 https://laracasts.com/discuss/channels/laravel/custom-accessor-not-working-anymoreのような問題へのリンクがあります。 – carrion