Laravel 中的一個新工廠看起來像這樣;<?php/* @var $factory \Illuminate\Database\Eloquent\Factory */use App\Model;use Faker\Generator as Faker;$factory->define(Model::class, function (Faker $faker) { return [ // ];});變量$factory未在此文件中定義。這個變量是如何定義的,在哪里定義的?對象dd($factory)中的預期結果\Illuminate\Database\Eloquent\Factory
1 回答

紫衣仙女
TA貢獻1839條經驗 獲得超15個贊
該變量$factory
未在文件本身中定義。只有當這個文件被 Laravel 處理時,通過在加載過程中包含它,$factory 才會引用 Factory 對象。
這是加載工廠文件的地方:\Illuminate\Database\Eloquent\Factory::load
請注意工廠文件開頭的文檔塊,它可以幫助您的 IDE 自動完成:
/**?@var?\Illuminate\Database\Eloquent\Factory?$factory?*/
現在你可能想知道Factory::load()
第一次被調用的地方。當工廠第一次被 DI 容器實例化時,它會被調用,例如,一旦您使用了factory()助手。
- 1 回答
- 0 關注
- 172 瀏覽
添加回答
舉報
0/150
提交
取消