您在這裡

請問 CCK 的 table 是怎麼決定的?

dennys's 的頭像
dennys 在 2010-08-16 (週一) 21:58 發表

我發現 CCK 欄位的 table, 有的會放在原來的 content type, 但有的又會獨立建一個新的 table.
有點搞不懂他的規則, 似乎是非 CCK 內建的欄位就一定會有新 table, 但內建的就不一定?
本來我以為如果是 1:1 的欄位應該就會建在同一個 table, 除非 1:n 才有需要放到另外的 table, 但看來也不太像...

另外就是, 可以強迫設定嗎? 為了效能好, 如果想以空間換取時間, 都強迫設在同一個 table 是否可以? 當然, 1:n 的無法做到, 不過 1:1 的應該可以.

cck 的作者有回應, http://drupal.org/node/884744. 規則其實很簡單, require 是 1 的就會放在同一個 table, 否則放在獨立的 table, 很合理.

但是有個例外是, 如果在第二個 table 使用同樣的 cck field, 則 CCK 會把第一個 table 的欄位刪除, 然後建立一個新 table 來存放兩個 table 的 cck field... 不過感覺這樣有點風險...