搜尋
首頁資料庫mysql教程Bangla 部分產生模型類別中的 Laravel Eloquent ORM)

Laravel Eloquent ORM in Bangla Part-enerating Model Classes)

Eloquent:產生模型類別 是產生模型類別以與 Laravel 中的資料庫表格互動的過程。使用 Eloquent ORM(物件關聯映射器),您可以輕鬆地從資料庫表中讀取、建立、更新和刪除資料。


如何建立模型類別

1.使用 Artisan 指令建立模型

模型類別是使用 Laravel 的 artisan CLI 建立的。執行以下命令:

php artisan make:model ModelName

例如,建立名為 Post 的模型:

php artisan make:model Post

這將在 app/Models 目錄中建立一個 Post.php 檔案。


模型的基本結構

模型通常應如下圖所示:

namespace App\Models;

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

class Post extends Model
{
    use HasFactory;
}


2.使用遷移檔案建立模型

使用以下命令一起建立模型和資料庫遷移:

php artisan make:model Post -m

這將創造兩件事:

  1. 發布模型。
  2. 名為database/migrations/2025_01_05_000000_create_posts_table.php的遷移檔案。

3.使用模型建立工廠和播種機

使用 Factory 和 Seeder 檔案建立模型:

php artisan make:model ModelName

  • m:將產生遷移。
  • f:將創建工廠。
  • s:將產生雪松。
  • c:將會建立控制器。

與模型中資料庫表的關係

1.預設表名

Laravel 根據模型類別名稱假定資料庫表名稱。
例如:

  • Post 模型的預設表是 posts。
  • User 模型的預設表是 users。

如果你想使用自訂表格,請在模型上設定 $table 屬性:

php artisan make:model Post


模型的重要屬性與方法

1. $fillable 和 $guarded

$fillable 或 $guarded 用於決定資料庫中哪些欄位可以插入資料。

  • $fillable:可以將資料插入指定欄位。
namespace App\Models;

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

class Post extends Model
{
    use HasFactory;
}

  • $guarded:無法將資料插入指定欄位。
php artisan make:model Post -m

2. $primaryKey

如果表的主鍵不是 id:

php artisan make:model Post -mfsc

3. $時間戳

Laravel 預設使用表格created_at 和updated_at 欄位。如果您不想使用它們:

class Post extends Model
{
    protected $table = 'blog_posts';
}

4.關係(關係)

模型可以使用 Eloquent 關係相互連結。

  • 一對一關係
php artisan make:model ModelName

  • 一對多關係
php artisan make:model Post

  • 多對多關係
namespace App\Models;

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

class Post extends Model
{
    use HasFactory;
}

以上是Bangla 部分產生模型類別中的 Laravel Eloquent ORM)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
如何使用Alter Table語句在MySQL中更改表?如何使用Alter Table語句在MySQL中更改表?Mar 19, 2025 pm 03:51 PM

本文討論了使用MySQL的Alter Table語句修改表,包括添加/刪除列,重命名表/列以及更改列數據類型。

如何為MySQL連接配置SSL/TLS加密?如何為MySQL連接配置SSL/TLS加密?Mar 18, 2025 pm 12:01 PM

文章討論了為MySQL配置SSL/TLS加密,包括證書生成和驗證。主要問題是使用自簽名證書的安全含義。[角色計數:159]

您如何處理MySQL中的大型數據集?您如何處理MySQL中的大型數據集?Mar 21, 2025 pm 12:15 PM

文章討論了處理MySQL中大型數據集的策略,包括分區,碎片,索引和查詢優化。

哪些流行的MySQL GUI工具(例如MySQL Workbench,PhpMyAdmin)是什麼?哪些流行的MySQL GUI工具(例如MySQL Workbench,PhpMyAdmin)是什麼?Mar 21, 2025 pm 06:28 PM

文章討論了流行的MySQL GUI工具,例如MySQL Workbench和PhpMyAdmin,比較了它們對初學者和高級用戶的功能和適合性。[159個字符]

如何使用Drop Table語句將表放入MySQL中?如何使用Drop Table語句將表放入MySQL中?Mar 19, 2025 pm 03:52 PM

本文討論了使用Drop Table語句在MySQL中放下表,並強調了預防措施和風險。它強調,沒有備份,該動作是不可逆轉的,詳細介紹了恢復方法和潛在的生產環境危害。

您如何用外國鑰匙代表關係?您如何用外國鑰匙代表關係?Mar 19, 2025 pm 03:48 PM

文章討論了使用外國密鑰來代表數據庫中的關係,重點是最佳實踐,數據完整性和避免的常見陷阱。

如何在JSON列上創建索引?如何在JSON列上創建索引?Mar 21, 2025 pm 12:13 PM

本文討論了在PostgreSQL,MySQL和MongoDB等各個數據庫中的JSON列上創建索引,以增強查詢性能。它解釋了索引特定的JSON路徑的語法和好處,並列出了支持的數據庫系統。

如何保護MySQL免受常見漏洞(SQL注入,蠻力攻擊)?如何保護MySQL免受常見漏洞(SQL注入,蠻力攻擊)?Mar 18, 2025 pm 12:00 PM

文章討論了使用準備好的語句,輸入驗證和強密碼策略確保針對SQL注入和蠻力攻擊的MySQL。(159個字符)

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
3 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
3 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您聽不到任何人,如何修復音頻
3 週前By尊渡假赌尊渡假赌尊渡假赌

熱工具

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

將Eclipse與SAP NetWeaver應用伺服器整合。

mPDF

mPDF

mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3 Mac版

SublimeText3 Mac版

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

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser是一個安全的瀏覽器環境,安全地進行線上考試。該軟體將任何電腦變成一個安全的工作站。它控制對任何實用工具的訪問,並防止學生使用未經授權的資源。