2010-11-08 47 views
0

我正在使用Drupal 6和Views 2,以及CCK,Panels和Node Relationships。 (到目前爲止)在Drupal 6中,當一個引用節點類型的新節點被創建時,我該如何在節點上自動創建CCK字段?

我有兩個基本的內容類型定義:

  1. 用戶配置文件(使用內容資料模塊)
  2. 產品

每個這些內容類型的具有節點參照其他兩種內容類型:階層和佣金:

  1. 用戶個人資料內容引用「層」內容
  2. 產品內容參考「委員會類別」內容

有可能是其中的每5-10,和高達每用戶/產品100。

當添加佣金類別時,需要爲每個當前存在的層節點添加美元值。

當添加一個Tier節點時,需要將此Tier的美元值添加到當前存在的每個Commission Category節點中。

預期的效果是具有「員工」角色的用戶可以同時管理用戶層和產品類別。

用戶在查看顯示爲層級和佣金類別組合的產品時將看到一個值。

例如:

類別A => 1級($ 100),層2($ 200),級別3($ 300)

類別B => 1級($ 120),第2層(250美元),3級(300美元)

有沒有辦法做我建議的?還是我需要嘗試完全不同的方法來達到預期的效果?

+0

我可能不明白你的問題,但是,你介意在主題層做這個,也就是渲染,而不是輸入? – berkes 2010-11-09 09:17:02

回答

0

我假設您還希望能夠稍後從層級節點頁面或委員會類別節點頁面編輯這些數量。

爲了使這些值更易於管理,您可能需要創建另一種引用層級和佣金類別的內容類型(稱爲佣金),並保存美元值。

然後我會做的是使用hook_form_alter(),以便在層表單中爲每個佣金類別添加一個輸入字段。這樣,無論何時添加新層(或編輯現有層),都可以一次更新所有這些值。使用hook_nodeapi()來插入/更新所有相應的Commission節點。

然後,您可以爲佣金類別表單做同樣的事情,但在另一個方向。

如果你期望有大量的層次或類別,這可能是一個沉重的操作,但否則它應該沒問題,因爲我假設你不會經常更改這些值。

相關問題