ThinkPHP5 模型多重巢狀下的排序

2021-09-29 10:23:22 字數 732 閱讀 4702

/** * 根據商品id 獲取 商品詳情 * 商品頭圖 product 商品詳情圖 productimage 商品引數 productproperty * productimage關聯了image表 productimage中 order欄位 定義商品詳情多張的排序 */

$product = self::with(['imgs.imgurl','properties'])

->find($id) ;

以上鏈式中 imgs 是 product->productimage   1->hasmany 

imgurl 是  productimage->image   1->belongsto  

properties 是 product->productproperty   1->hasmany  

productimage 表中 order 字段  是 各個的展示順序
with() 鏈式表示式中可以傳 字串 with('img')  

可以傳陣列with(['imgs.imgurl','properties'])

可以傳閉包函式

//img關聯imgurl 對此通過order欄位排序之後  再關聯properties

$product = self::with([

'imgs' => function($query)

]) ->with(['properties'])

->find($id) ;

Thinkphp5模型的查詢

查詢單個資料 取出主鍵為1的資料 user user get 1 echo user name 使用陣列查詢 user user get name thinkphp 使用閉包查詢 user user get function query echo user name 例項化後呼叫find方法 use...

Thinkphp5中模型的理解

在不同資料當中如何做到轉換,其實就是只要資料,不要結構,資料和資料一一對應即可。tp5裡的模型是針對資料庫表說的,我們不必去寫curd的sql語句,而專注於運算元據庫里的內容。所以當把資料庫表當乙個物件看待,繼承了model之後,我就像運算元組一樣來運算元據庫。匯入模型類 class index 讓...

thinkphp5的模型中使用關聯

有以下兩個表 artitcle表 表示文章 article的主鍵是id,外來鍵是cateid,cateid對應於cate表的主鍵id。cate表 表示欄目 cate表的主鍵是id。這兩張表表示,每一篇文章屬於乙個欄目,每乙個欄目有很多篇文章。然後編寫model類 article的model類 cla...