2010-06-30 66 views
1

我有一些視圖列出了我的模塊表項。 在視圖下添加表單以添加記錄的最優雅方式是什麼? 啥子我想知道的是:Drupal視圖添加表單添加記錄

  1. 我我的模塊中設立了專門的形式:

    function my_module_form_add_record($form_state) { 
    form fields..... 
    

    }

  2. 我添加到視圖主題文件:

    $ add_form = drupal_get_form('my_module_form_add_record'); print $ add_form;

但我不喜歡這種解決方案至少有兩個原因:

  1. 我不工作...

2.即使它的工作 - 它是依賴在主題文件上!所以,如果我改變主題 - 功能崩潰。 我想找到更加優雅的解決方案,將自定義模塊的表單附加到視圖中。

我知道「Views Attach」模塊的存在,但它沒有添加自定義表單的選項。 我也知道存在的意見嵌入式窗體(我很高興),但它只是有用的,如果你想添加窗體到每一行。

似乎必須是一些解決方案,從查看頁面添加記錄! 謝謝你的幫助。

回答

1

你可以使用hook_views_pre_render:渲染過程前右

這個鉤子被調用。查詢已經執行,並且pre_render()階段已經發生在處理程序上,所以所有數據都應該可用。

將輸出添加到視圖可以通過在$ view-> attachment_before和$ view-> attachment_after上放置文本來完成。修改內容可以通過編輯$ view-> result項來實現。

+0

謝謝,但是這是模板鉤子還是模塊鉤子? – Lukasz 2010-06-30 14:47:00

+0

看着意見代碼,它似乎是兩個。 – 2010-06-30 14:49:12

+0

更新..你是對的。謝謝。我首先在template.php文件中使用了這個鉤子,所以我認爲它只是一個主題鉤子。直到現在我還不知道鉤子可以是主題和模塊。 也謝謝你。 – Lukasz 2010-06-30 14:53:09