laravel使用Faker資料填充的方法介紹(程式碼)
這篇文章帶給大家的內容是關於laravel使用Faker資料填充的方法介紹(程式碼),有一定的參考價值,有需要的朋友可以參考一下,希望對你有幫助。
導語:做開發的時候,加入測試資料是不可或缺的,laravel 內建了很方便的資料填充,下面是實例。
資料遷移
先建立資料模型與資料遷移php artisan make:model Models/FakerUser -m
;
database/migrations/{now_date}_create_faker_users_table.php 檔案
/** * Run the migrations. * * @return void */7 public function up() { Schema::create('faker_users', function (Blueprint $table) { $table->increments('id'); $table->char('name', 20)->comment('姓名'); $table->string('email', 50)->comment('邮箱'); $table->tinyInteger('age')->comment('年龄'); $table->char('city', 20)->comment('城市'); $table->timestamps(); }); DB::statement("ALTER TABLE `faker_users` comment'测试用户表'"); // 表注释 }
php artisan migrate 後資料表建立完成。
資料填充
建立資料填充檔案php artisan make:seeder FakerUsersSeeder;
run() 方法中手動新增幾個測試資料。但好的辦法,是使用
模型工廠,接下來把注意力轉移到模型工廠中;
php artisan make:factory FakerUsersFactory;
Faker\Generator 來產生測試數據,編輯
database/factories/FakerUsersFactory.php
#
<?php use Faker\Generator as Faker; $factory->define(\App\Models\FakerUser::class, function (Faker $faker) { return [ 'name' => $faker->name, 'email' => $faker->safeEmail, 'age' => $faker->numberBetween(8, 80),// 数字在 8-80 之间随机 'city' => $faker->city, 'created_at' => $faker->dateTimeBetween('-3 year', '-1 year'),// 时间在 三年到一年 之间 'updated_at' => $faker->dateTimeBetween('-1 year', '-5 month'),// 时间在 一年到五个月之间 ]; });
Faker\Generator 的作用。它可以產生的資料類型有很多,更多的類型可以看下官方文檔,雖然是英文的,不過都有示例,簡單易懂;
Faker 產生的資料默認是英文,可以在
config/app.php 中將
faker_locale 設定為
zh_CN;
database/seeds/FakerUsersSeeder.php,在
run() 方法中如下程式碼
/** * Run the database seeds. * * @return void */ public function run() { factory(\App\Models\FakerUser::class)->times(1000)->make()->each(function ($model) { // 数据入库 $model->save(); }); }
##資料也是正確的
以上是laravel使用Faker資料填充的方法介紹(程式碼)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

多次調用session_start()會導致警告信息和可能的數據覆蓋。 1)PHP會發出警告,提示session已啟動。 2)可能導致session數據意外覆蓋。 3)使用session_status()檢查session狀態,避免重複調用。

AI可以幫助優化Composer的使用,具體方法包括:1.依賴管理優化:AI分析依賴關係,建議最佳版本組合,減少衝突。 2.自動化代碼生成:AI生成符合最佳實踐的composer.json文件。 3.代碼質量提升:AI檢測潛在問題,提供優化建議,提高代碼質量。這些方法通過機器學習和自然語言處理技術實現,幫助開發者提高效率和代碼質量。

session_start()iscucialinphpformanagingusersessions.1)ItInitiateSanewsessionifnoneexists,2)resumesanexistingsessions,and3)setsasesessionCookieforContinuityActinuityAccontinuityAcconActInityAcconActInityAcconAccRequests,EnablingApplicationsApplicationsLikeUseAppericationLikeUseAthenticationalticationaltication and PersersonalizedContentent。

Laravel和Yii的主要區別在於設計理念、功能特性和使用場景。 1.Laravel注重開發的簡潔和愉悅,提供豐富的功能如EloquentORM和Artisan工具,適合快速開發和初學者。 2.Yii強調性能和效率,適用於高負載應用,提供高效的ActiveRecord和緩存系統,但學習曲線較陡。

最新版本的Laravel10與MySQL5.7及以上、PostgreSQL9.6及以上、SQLite3.8.8及以上、SQLServer2017及以上兼容。這些版本選擇是因為它們支持Laravel的ORM功能,如MySQL5.7的JSON數據類型,提升了查詢和存儲效率。

HTML5帶來了五個關鍵改進:1.語義化標籤提升了代碼清晰度和SEO效果;2.多媒體支持簡化了視頻和音頻嵌入;3.表單增強簡化了驗證;4.離線與本地存儲提高了用戶體驗;5.畫布與圖形功能增強了網頁的可視化效果。

MySQL函數可用於數據處理和計算。 1.基本用法包括字符串處理、日期計算和數學運算。 2.高級用法涉及結合多個函數實現複雜操作。 3.性能優化需避免在WHERE子句中使用函數,並使用GROUPBY和臨時表。

2024年必備的Laravel擴展包包括:1.LaravelDebugbar,用於監控和調試代碼;2.LaravelTelescope,提供詳細的應用監控;3.LaravelHorizon,管理Redis隊列任務。這些擴展包能提升開發效率和應用性能。
