Bagaimana cara menggunakan fungsi dsm () untuk mencetak array $ form dari formulir saya?

8

Saya ingin menggunakan dsm()fungsi modul Devel untuk mencetak $formarray formulir, di mana form_idada search_theme_form. Bagaimana cara melakukannya?

sokratis
sumber

Jawaban:

12

Mulai modul khusus, masukkan kode ini:

/**
* Implements hook_form_alter().
*/
function foo_form_alter(&$form, $form_state, $form_id) {
  if ($form_id == 'search_theme_form') {
    dpm($form);
  }
}

Juga, Anda mungkin ingin menggunakan dpm () di atas dsm () karena yang terakhir adalah fungsi warisan.

Bart
sumber
1
@sokratis Anda juga dapat mengunduh modul sederhana saya untuk formulir pengembangan - ia menambahkan dpm($form_state)bahkan setelah mengirimkan
mojzis
apakah ini masih akurat?
Jeff
3
function THEME_form_search_theme_form_alter (&$form, &$form_state){

krumo ($form); // you can use DSM as well here

}

Ganti TEMA dengan nama tema Anda dan letakkan di template.php Anda, jika Anda ingin melakukannya dari modul kemudian ganti TEMA dengan nama modul Anda dan masukkan funciton itu di file .module Anda

sutra sutera
sumber
2

Gunakan drupal_retrieve_form untuk mendapatkan array formulir terstruktur:

$form_state = array();
dsm(drupal_retrieve_form('search_theme_form', &$form_state));
Oswald
sumber