Laravel 8 創(chuàng)建模型

2021-07-09 10:50 更新

模型工廠定義后,就可以在 Eloquent 模型上使用 Illuminate \ Database \ Eloquent \ Factories \ HasFactory 特性提供的靜態(tài) factory 方法來(lái)實(shí)例化該模型的工廠實(shí)例:

namespace App\Models;

use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;

class User extends Model
{
    use HasFactory;
} 

讓我們看一些創(chuàng)建模型的例子。首先,我們將使用 make 方法創(chuàng)建模型但不將他們保存至數(shù)據(jù)庫(kù)中:

use App\Models\User;

public function testDatabase()
{
    $user = User::factory()->make();

    // Use model in tests...
} 

你也可以使用 count 方法創(chuàng)建一個(gè)含有多個(gè)模型的集合:

// Create three App\Models\User instances...
$users = User::factory()->count(3)->make(); 

HasFactory 特征的 factory 方法將使用默認(rèn)的約定來(lái)確定模型的正確工廠。 具體來(lái)說(shuō),該方法將在 Database \ Factories 命名空間中尋找一個(gè)工廠,該工廠的類名與模型名稱匹配,并且后綴為 Factory 。 如果這些約定不適用于您的特定應(yīng)用程序或工廠,則可以直接使用工廠來(lái)創(chuàng)建模型實(shí)例。 要使用 factory 類創(chuàng)建一個(gè)新的工廠實(shí)例,應(yīng)在工廠上調(diào)用靜態(tài)的 new 方法:

use Database\Factories\UserFactory;

$users = UserFactory::new()->count(3)->make(); 
以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)