Laravel Model Eloquent 動態資料表
1 min readAug 1, 2020
今日主題:最近在做平台時有個需求是要將Model 的$table可以根據商店(store)來進行切換,例如 xiaomi_products、mami_products…前綴使用”xxx_”將商品按表存放。
# 步驟說明
1. 新增基礎Model #重點在於建構子
2. 新增需要的Model,如News、Product、Category...繼承自“基礎Model”
新增Model: Product
<?phpnamespace App\Models;use App\Models\BaseModel\BaseModel as Eloquent;/*** 產品列表*/class Product extends Eloquent {# ... 省略 ...}
—
# 重點說明會選擇使用這個方式的原因是,原本的Model提供的相關function都可以正常使用,laravel-admin的Controller也可以正常使用。之前使用在new 實例化Model的時候將table name 透過參數配置,造成很多奇怪的問題。
— 完成 —