Laravel 8 定義內(nèi)的關(guān)系

2021-07-26 09:33 更新

您可以將關(guān)系附加到工廠定義中的模型。例如,如果您想在創(chuàng)建 Post 時創(chuàng)建一個新的 User 實例,您可以這樣做:

    use App\Models\User;

    /**
     * Define the model's default state.
     *
     * @return array
     */
    public function definition()
    {
        return [
            'user_id' => User::factory(),
            'title' => $this->faker->title,
            'content' => $this->faker->paragraph,
        ];
    } 

如果關(guān)系的列取決于定義它的工廠,您可以提供一個接受求值屬性數(shù)組的回調(diào):

    /**
     * Define the model's default state.
     *
     * @return array
     */
    public function definition()
    {
        return [
            'user_id' => User::factory(),
            'user_type' => function (array $attributes) {
                return User::find($attributes['user_id'])->type;
            },
            'title' => $this->faker->title,
            'content' => $this->faker->paragraph,
        ];
    } 
以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號