我需要在視圖創建表單的節點的形式(未在編輯)的內容類型A. 這種形式的需要將數據提交給內容類型B.的Drupal 6,創建其中數據保存到另一個內容類型(CCK)
我注意到node/<nodeID/edit
是讓您編輯節點的表單的「動作」。但是,如果我把同樣的動作在我的窗體上它顯示我B的編輯節點頁面
我的形式很簡單,只要:
<form action="xxx">
<input type="text" name="cck_field_to_be_added_in_B" value="foobar">
</form>
設置XXX行動是不夠的,因爲FAPI需要form_id和其他的東西...所以,我怎樣才能建立一個「正確」的形式,並以正確的方式發送數據呢?
有什麼想法?
----編輯----
使用它工作的rimian解決方案。下面是詳細說明:
我需要在用CCK創建的節點視圖中的表單。所以,我有我的兩個功能模塊:
function getForm(){
return drupal_get_form('buildForm');
}
function buildIngredientsForm(){
$form[]... //bla bla bla build the form
return $form;
}
因爲我想這是一個CCK裏面的內容,比我能「黑客」 CCK的主題化系統。這裏解釋一下如何:http://drupal.org/node/206980
現在,只要你想要顯示你的表格,只需撥打print mymodule.getForm();
,魔法就完成了。
問候, Segolas
謝謝您的回答。 我想我必須在我的模塊中放入'function my_function()'。 但是我到底需要放置'$ form ['#submit'] [] ='my_function';'? – Segolas 2011-05-19 12:07:16
是的,沒錯。你需要讓自己成爲一個模塊。你的$表單修改進入一個hook_form_later(在你的模塊中)。它改變了表單以添加額外的功能。這就是Drupal的美麗。它可以讓你輕鬆擴展現有的功能:) – Rimian 2011-05-20 05:37:31