2011-09-10 20 views
0

我知道了類似的問題以前有人問,但它沒有一個完整的答案我的問題問題In drupal how to add name textfield to simple news block如何添加和名稱文本框保存到簡單的新聞塊

function mymodule_simplenews_block_form_submit($form, &$form_state) { 
    if ($form['#id'] == 5) { 
    $name = $form_state['values']['name']; 
    // Do something here to store the name in the database 
    // ... 
    // ... 

    } 
} 

我不t取得與「在此做一些事情將名稱存儲在數據庫中」有關的部分。首先,我應該將name字段添加到simplenews_subscribers表中嗎?如何將名稱字段保存在數據庫中?我知道有一個simplenews_realname模塊,但它是用於Drupal 6.

謝謝!

回答

1

您不應該將字段添加到另一個模塊中的現有表中,因爲這可能會在升級時出現問題。請使用hook_schema在自定義模塊中創建自己的表格,並將數據保存到那裏。

這個module developer's guide會幫助你,如果你是新的建設Drupal模塊。

+0

那麼,可以修改其他模塊並將其命名爲mymodule,或者這聽起來像一個壞主意嗎?對於這樣一個小功能,這似乎是很多代碼? –

+0

修改其他答案中的代碼很好,是的。當使用像Drupal這樣的CMS框架時,您總是會編寫更多的代碼,它的構建儘可能通用,副作用是額外的代碼複雜性,但具有更好的可擴展性和可移植性。 – Clive

相關問題