モデルに関連する小さな問題をlaravelに記録する

  • コードを見ていたときに、今まで知りたくなかった問題を突然思いましたが、今のところ、突然、突然明るくなりました。コードは次のとおりです。
public function index(Request $request)
{
	return view('user_addresses.index', [
	    'addresses' => $request->user()->addresses,
	]);
}
  • コントローラにはそのようなメソッドがあり、次の$request->user()->addresses部分はこのようなものです:
    • まず$request->user()、現在のログインオブジェクトのモデルを取得します。addressesメソッドとaddressモデルの関連付けはユーザーモデルで定義されているため、この時点でログインオブジェクトのアドレスを取得する場合は、直接$request->user()->addresses
    • 前の質問は、アドレスを取得したい場合は、なぜaddressそれを直接要求ないのか、ただ理解したいだけでした。現在のログインオブジェクトのアドレスが必要だからです。
  • ここに小さな問題があります:
    • なぜそれ$request->user()->addressesaddressesその背後には、括弧を必要としないのですか?
    • Userモデルで定義されている場合の方法です
    public function addresses()
    {
        return $this->hasMany(UserAddress::class);
    }
    
    • ドキュメントを見てください:
    • ここに画像の説明を挿入
    • addressesここでは動的属性としてアクセスされるため、追加する必要はありません
元の記事を145件公開 38のような 17万人以上の訪問者

おすすめ

転載: blog.csdn.net/yehuaner33/article/details/105474801