您在這裡

關於 content type 的 field name

ilay's 的頭像
ilay 在 2010-12-31 (週五) 22:31 發表

請問在定義 content type 時,所輸入的 field name 是否能重複使用呢?
比如說我現在add 一個叫 A 的 content type,其中新增一個 field name 叫做 CoolImage
那麼再 add一個名為 B 的 content type ,是否還能新增一個叫做 CoolImage 的 field name 呢
謝謝~

CCK 的 field 架構,考量的正是希望重覆利用在不同的 content type。Drupal 希望你設計的 field,如果意義相同的話,盡量能夠應用在不同的 content type 上面。 這樣子的話,它們會有相同的輸入方式與呈現。

可是這也造成使用 CCK 作為程式開發的人員很大的困援:field 在資料庫中的架構,是會變動的。

這會造成今天針對 CCK field 存取的 sql, 明天可能就失敗了。 我在這地方也吃了很大的虧。這個問題在設計 Durpal 7 的時候,又再度引起一陣討論。最後採定在 Drupal 6 的「彈性設計」,理由是:畢竟在前端直接應用 fields 的情況比較多。程式開發者只好多作一些考量,採用 node 存取的 api, 而不要直接使用 sql 來存取內部的結構。