第一步:設置 Laravel 項目
首先,通過 Composer 創建一個新的 Laravel 項目:
composer create-project --prefer-dist laravel/laravel rest-api-crud
第二步:配置 MySQL 數據庫
Laravel 11 默認使用 sqlite 作為數據庫連接類型。要切換到 MySQL,請在 .env 文件中將 DB_CONNECTION 修改為 mysql:
DB_CONNECTION=mysql
第三步:使用遷移創建產品模型
運行以下命令,為產品模型創建遷移文件、工廠、控制器等:
php artisan make:model Product -a
第四步:更新遷移文件
打開生成的遷移文件 database/migrations/YYYY_MM_DD_HHMMSS_create_products_table.php,在 up 方法中定義表結構:
public function up(): void
{
Schema::create('products', function (Blueprint $table) {
$table->id();
$table->string('name');
$table->string('details');
$table->timestamps();
});
}
然后運行遷移命令:
php artisan migrate
第五步:創建產品存儲庫接口
為產品模型創建存儲庫接口,以實現代碼的模塊化和可維護性:
php artisan make:interface Interfaces/ProductRepositoryInterface
在 app/Interfaces 目錄下創建 ProductRepositoryInterface.php 文件,并添加以下代碼:
<?php
namespace AppInterfaces;interface ProductRepositoryInterface
{
public function index();
public function getById($id);
public function store(array $data);
public function update(array $data, $id);
public function delete($id);
}
第六步:創建產品存儲庫類
為產品模型創建存儲庫類:
php artisan make:class Repositories/ProductRepository
在 app/Repositories 目錄下創建 ProductRepository.php 文件,并實現接口中的方法。
第七步:綁定接口與實現
將 ProductRepository 綁定到 ProductRepositoryInterface,以便依賴注入。使用以下命令創建服務提供者:
php artisan make:provider RepositoryServiceProvider
打開 app/Providers/RepositoryServiceProvider.php 文件,在 register 方法中添加以下代碼:
public function register()
{
$this->app->bind(
AppInterfacesProductRepositoryInterface::class,
AppRepositoriesProductRepository::class
);
}
第八步:請求驗證
創建兩個請求類 StoreProductRequest 和 UpdateProductRequest,用于驗證傳入的數據。可以使用以下命令生成:
php artisan make:request StoreProductRequest
php artisan make:request UpdateProductRequest
在生成的請求類中定義驗證規則。
第九步:創建通用 ApiResponse 類
為了統一 API 響應格式,可以創建一個通用的 ApiResponse 類:
php artisan make:class Classes/ApiResponseClass
在 app/Classes 目錄下創建 ApiResponseClass.php 文件,并定義通用響應方法。
第十步:創建產品資源
使用以下命令創建資源類:
php artisan make:resource ProductResource
在資源類中定義數據格式化邏輯,以便統一返回的 JSON 數據結構。
第十一步:創建產品控制器
在控制器中使用存儲庫實現 CRUD 操作。打開 app/Http/Controllers/ProductController.php 文件,添加以下代碼以實現控制器邏輯。
第十二步:定義 API 路由
運行以下命令發布 API 路由文件:
php artisan install:api
然后在 routes/[api](http://m.dlbhg.com/wiki/api/).php 文件中定義路由,將控制器方法映射到相應的路由。例如:
Route::apiResource('products', ProductController::class);
總結
通過以上步驟,您可以在 Laravel 11 中構建一個功能完善的 代碼的可維護性和擴展性。
完成所有步驟后,運行以下命令啟動開發服務器并測試 API:
php artisan serve
希望這篇指南對您有所幫助!
原文鏈接: https://medium.com/@1415sandalanka/laravel-11-rest-api-crud-with-best-practices-fcc26505e0d2
熱門推薦
一個賬號試用1000+ API
助力AI無縫鏈接物理世界 · 無需多次注冊
免費開始試用 →
3000+提示詞助力AI大模型
和專業工程師共享工作效率翻倍的秘密
国内精品久久久久影院日本,日本中文字幕视频,99久久精品99999久久,又粗又大又黄又硬又爽毛片
国产精品一区二区久久不卡 |
中文av字幕一区 |
欧美一区二区精美 |
日韩一区二区三区电影在线观看
|
国产精品久久久久久久久免费桃花 |
国产美女娇喘av呻吟久久 |
综合在线观看色 |
99精品国产一区二区三区不卡 |
成人免费一区二区三区在线观看 |
aaa欧美色吧激情视频 |
一区二区三区产品免费精品久久75 |
欧美三级视频在线 |
国产真实乱子伦精品视频 |
国产精品成人免费在线 |
欧美日韩国产一级片 |
国产专区欧美精品 |
亚洲综合色成人 |
久久亚洲一区二区三区明星换脸
|
国产不卡视频一区二区三区 |
亚洲欧美日韩国产综合在线 |
制服丝袜中文字幕一区 |
成人黄色国产精品网站大全在线免费观看 |
亚洲人精品午夜 |
精品999久久久 |
在线观看亚洲专区 |
国产一区二区三区 |
亚洲国产中文字幕在线视频综合 |
2017欧美狠狠色 |
欧美日韩在线免费视频 |
国产99久久久久久免费看农村 |
亚洲电影一级片 |
国产精品国产三级国产专播品爱网 |
91精品麻豆日日躁夜夜躁 |
粉嫩aⅴ一区二区三区四区 |
视频一区二区不卡 |
日韩毛片一二三区 |
国产午夜精品一区二区三区嫩草 |
欧美老女人在线 |
91行情网站电视在线观看高清版 |
国产一区欧美日韩 |
婷婷六月综合亚洲 |
亚洲综合精品久久 |
国产精品成人免费在线 |
国产三级久久久 |
精品少妇一区二区三区在线视频 |
欧美中文字幕亚洲一区二区va在线 |
国产·精品毛片 |
国产一区二区三区精品视频
|
亚洲欧美日韩一区二区
|
精品一区二区在线观看 |
五月激情综合色 |
一区二区三区在线播 |
中文在线免费一区三区高中清不卡 |
777亚洲妇女 |
精品视频1区2区 |
欧美这里有精品 |
成人免费毛片高清视频 |
国产精品一二二区 |
国产专区欧美精品 |
国产一区二三区好的 |
久久国产综合精品 |
麻豆国产精品官网 |
久久精品国产99 |
蜜臂av日日欢夜夜爽一区 |
日日摸夜夜添夜夜添亚洲女人 |
亚洲午夜激情av |
亚洲永久免费视频 |
一区二区欧美在线观看 |
亚洲精品高清在线观看 |
亚洲美女免费在线 |
一区2区3区在线看 |
亚洲一区在线看 |
亚洲午夜久久久 |
天天色天天爱天天射综合 |
婷婷久久综合九色综合伊人色 |
午夜国产精品影院在线观看 |
午夜电影网亚洲视频 |
香蕉影视欧美成人 |
日韩成人免费在线 |
久久福利资源站 |
国产一区三区三区 |
成人91在线观看 |
在线视频欧美区 |
欧美精品v国产精品v日韩精品
|
丁香六月久久综合狠狠色 |
成人av网站大全 |
99re成人精品视频 |
91免费在线看 |
欧美人与性动xxxx |
日韩欧美国产小视频 |
日韩精品一区二区三区视频 |
精品国产乱码久久久久久蜜臀
|
成人h精品动漫一区二区三区 |
成人免费毛片片v |
97se亚洲国产综合自在线不卡
|
日韩欧美二区三区 |
日本一区二区高清 |
一级日本不卡的影视 |
日韩不卡在线观看日韩不卡视频 |
久久99蜜桃精品 |
av电影一区二区 |
欧美日韩国产乱码电影 |
日韩欧美视频在线 |
国产精品日韩精品欧美在线 |
亚洲激情图片一区 |
蜜桃av一区二区 |
99久久精品免费观看 |
欧美日韩国产另类不卡 |
国产三区在线成人av |
亚洲小说欧美激情另类 |
国产在线视频不卡二 |
91香蕉视频污在线 |
91精品欧美久久久久久动漫 |
国产精品丝袜91 |
天天综合色天天 |
heyzo一本久久综合 |
6080yy午夜一二三区久久 |
久久精品视频免费观看 |
亚洲综合一区二区三区 |
精品综合免费视频观看 |
色综合久久综合中文综合网 |
日韩精品一区二区三区在线 |
亚洲欧洲日产国产综合网 |
日韩电影在线观看网站 |
成人av资源站 |
8v天堂国产在线一区二区 |
中文字幕在线播放不卡一区 |
全部av―极品视觉盛宴亚洲 |
成人黄色在线网站 |
欧美一卡二卡在线 |
亚洲精品一二三区 |
国产福利一区二区三区 |
555www色欧美视频 |
亚洲欧美激情小说另类 |
国产一区二区中文字幕 |
欧美丰满嫩嫩电影 |
亚洲精品高清视频在线观看 |
国产成人精品免费在线 |
91精品国产色综合久久不卡电影 |
亚洲人成亚洲人成在线观看图片 |
狠狠久久亚洲欧美 |
欧美精品日韩综合在线 |
亚洲蜜臀av乱码久久精品蜜桃 |
国产乱子轮精品视频 |
欧美日韩电影一区 |
亚洲精品成人在线 |
99久久精品国产毛片 |
久久久久99精品一区 |
麻豆国产一区二区 |
欧美一区二区三区在线观看视频 |
亚洲免费观看高清 |
成人av电影免费观看 |
国产亚洲1区2区3区 |
麻豆精品一区二区综合av |
欧美色涩在线第一页 |
一区二区不卡在线播放
|
一区二区三区免费 |
91在线免费播放 |
国产精品久久久久久久久免费樱桃
|
国产成人亚洲精品青草天美
|
三级一区在线视频先锋 |
欧美色手机在线观看 |
一区二区三区毛片 |
欧美亚洲一区二区三区四区 |
亚洲精品中文在线观看 |
色成年激情久久综合 |
亚洲另类一区二区 |
色综合激情久久 |
一区二区三区四区视频精品免费 |
色综合久久综合网欧美综合网 |
1024成人网色www |
日本久久精品电影 |
午夜精品成人在线 |
欧美不卡一二三 |
国产成人av一区 |
日韩理论电影院 |
欧美亚洲一区二区在线 |
亚洲福利视频导航 |
6080午夜不卡 |
精品一区二区三区在线播放视频
|
毛片av中文字幕一区二区 |
日韩一区二区免费高清 |
日韩电影在线免费看 |
日韩色在线观看 |
国产激情一区二区三区桃花岛亚洲 |
精品国产91乱码一区二区三区
|
972aa.com艺术欧美 |
一区二区三区资源 |
欧美日韩国产高清一区二区三区
|
国产亚洲成年网址在线观看 |
成熟亚洲日本毛茸茸凸凹 |
91.xcao |
国产精品99久久久久久久女警 |
国产精品久久午夜 |
欧美性感一类影片在线播放 |
日韩**一区毛片 |
国产欧美一区二区三区网站 |
色综合久久久久综合体桃花网 |
亚洲成人综合在线 |
久久综合久久综合亚洲 |