Formular in hook_form() themen
am 03.02.2010 - 16:36 Uhr in
Hallo,
ich schreibe ein Modul, welches viele Formularfelder hat. Diese sollen beim bearbeitend er Node in einer Tabelle angeordnet werden. Für die normale Ausgabe funktioniert das mit hook_view, nur mit dem themen neim eingeben der Daten in das Formular komme ich nicht zurecht. Ich habe mir in den letzte Tagen viele Threads hier und auf Drupal.org durchgelesen, finde aber keine Lösung, die funktioniert.
MfG
Florian
<?php
function example_node_info() {
...
}
function example_access($op, $node, $account) {
...
}
function example_perm() {
...
}
function example_form(&$node, &$form_state) {
...
$form['title'] = array(
'#type' => 'textfield',
'#title' => t('Name des examples'),
'#required' => TRUE,
'#weight' => -5,
);
...
// Weiter
$form['next'] = array(
'#type' => 'submit',
'#value' => t('Weiter >>'),
);
...
return $form;
}
function example_form_validate($form, &$form_state) {
...
}
function example_form_alter(&$form, $form_state, $form_id) {
...
}
function example_node_form_submit($form, &$form_state) {
...
}
function example_insert($node) {
...
}
function example_update($node) {
...
}
function example_delete($node) {
...
}
function example_load($node) {
...
return $additions;
}
function example_view($node, $teaser = FALSE, $page = FALSE) {
$node = node_prepare($node, $teaser);
$node->content['example'] = array(
'#value' => theme('example_theme_table', $node),
'#weight' => 1,
);
return $node;
}
function example_theme() {
return array(
'example_theme_table' => array(
'arguments' => array('node'),
),
);
}
function theme_example_theme_table($node) {
...
return $output;
}
?>- Anmelden oder Registrieren um Kommentare zu schreiben

Hi, versuch bitte deine
am 03.02.2010 - 16:53 Uhr
Hi,
versuch bitte deine Frage deutlicher zu formulieren.
Und schau dir bitte nochmal die Coding Conventions von Drupal an, dein Code ist keine Freude zu lesen.
Ich hoffe das hier hilft dir:
http://www.drupalcenter.de/handbuch/20522
---
Viele Grüße,
Kars-T
| comm-press
Die Formatierung ist wohl
am 03.02.2010 - 17:20 Uhr
Die Formatierung ist wohl beim kopieren verloren gegangen, wenn dass nicht so sein soll. Ich habe erste gedacht, das wir automatisch so umformatiert.
Ich möchte für das Formular in example_form() eine Funktion theme_example_form() haben, mit der ich die Formulare in einer Tabelle ausgeben kann. Wie bringe ich Drupal dazu, dass theme_example_form() aufgerufen wird?
Ich habe probiert:
in example_form():
<?php$form['#theme'] = 'theme_example_form';
?>
oder
in example_form():
<?php$form['#theme'] = 'example_form';
?>
oder
in example_theme():
<?phpfunction example_theme() {
return array(
'waggon_form' => array(
'arguments' => array('form'),
'function' => 'theme_example_form'
),
);
}
?>
Geht alles in allen Kombinationen nicht.
MfG
Florian