2010-11-16 38 views
1

使用hook_nodeapi,我想阻止更新節點時保存某些字段。我有一個簡單的付款表單,可以輸入到Authorize.net,但CC號碼和日期不應該保存,只需傳遞給Authorize.net。nodeapi不改變節點數據

我可以通過數據罰款。但Drupal仍然保存數據。

我試着在提交和更新操作中取消設置字段,既不工作。如果我在默認情況下執行此操作,它將起作用,但由於數據不可用,我的更新將失敗。

在不干擾更新的情況下從節點刪除數據的正確操作是什麼?

回答

2

我會刪除從節點的字段,並使用鉤子形狀改變添加它們。這樣你就沒有空的領域沒有被用於任何事情。

編輯

如果你真的想用hook_nodeapi()它使用$op='presave'

「presave」:節點通過驗證 和即將被保存。在保存到數據庫之前,模塊可能會使用 對節點 進行更改。

1

如果我想要防止更新節點時保存某些字段,我會使用hook_form_alter刪除我不想提交的數據。

更多信息以http://drupal.org/node/651106

+0

也許我最終會做什麼。 – Kevin 2010-11-17 14:19:04