簡體   English   中英

cakephp在一個聯接表中一次聯接兩個以上的表

[英]cakephp join more than 2 tables at once in one join table

我已經成功地將我的許多項目轉換為Cake,但我遇到的一個項目卻給我帶來了挑戰。

在典型的“ hasMany through ”連接中,例如。 在Cake文檔中,您有3個表, StudentCourseCourseMembership StudentCourse hasMany CourseMembershipCourse hasMany CourseMembership CourseMembership belongsTo StudentCourse

我的問題是,是否可以使用常規約定以這種方式將兩個以上的表連接在一起? 例如,添加另一個表,例如Lecturer (忘記現實的可能性)會創建更多可能的排列,但是Cake可以本地處理嗎?

提前致謝。

編輯:這將是聯接(HTH)的表布局:

id | student_id | course_id | lecturer_id

編輯2:默認情況下, course_students表將被稱為course_students所以我需要的是具有上述布局的名為course_lecturer_students的表(顯然,不需要調用它,而只是為了符合CakePHP命名約定)。

絕對。 您可以根據需要Join任意多個表。 使用CakePHP進行聯接與使用MySQL運行聯接查詢沒有什么不同-CakePHP只是采用CakePHP語法並為您創建MySQL(或其他)查​​詢。

旁注-只需確保您正確索引了表即可。

您可以將Cakephp用於

  1. 將簡單的sql編寫為查詢(不可推薦)
  2. 寫連接句子
  3. 使用深層關聯(可推薦)

但是,您的問題尚不清楚,無法確定您正在尋找哪種答案,或者您正在尋找什么?

可能您可以擴展所需的最終結果以幫助您

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM