Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Drupal 7- Отобразить две формы на странице с использованием template файла / 1 сообщений из 1, страница 1 из 1
01.04.2013, 17:47
    #38207719
Usik
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Drupal 7- Отобразить две формы на странице с использованием template файла
Здравствуйте, хоть форум и называется php/perl/Python думаю тут есть люди которые знакомы с Drupal. В общем проблема такова:
Разрабатываю новый модуль. Необходимо осуществить процесс обработки нескольких форм. Создал формы и мне не понравился layout темы. Решил раставить контролы, так как мне нужно. Для этого сделал следующее, создал свой модуль, там написал такое:

Код: php
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
function example_menu() {
    $items['base/manual'] = array(
        'page callback'    => 'test_page',
        'access arguments' => array('access content'),
    );
    return $items;
}
 
function example_theme() {
    return array(
        'form1'  => array(
        'render element' => 'form',
        'template' => 'template_file',
        ),
    );
}
 
function form1($form, &$form_state) {
    $form['name'] = array(
        '#type' => 'textfield',
        '#title' => t('Name'),
        '#required' => TRUE,
    );
    $form['submit'] = array(
        '#type' => 'submit',
        '#value' => t('Go'),
    );
    return $form;
}
 
function test_page(){
    $forms = array();
    $forms['first']=drupal_get_form('form1');
    return $forms;
}



Файл Template_file и занимается выводом формы. В общем все хорошо. Но вот как сделать так чтобы в файл template_file, мог вывести две формы? Т.е. мне нужно на одной странице иметь две формы.
Код: php
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
function example_menu() {
    $items['addaccident/base/manual'] = array(
        'page callback'    => 'test_page',
        'access arguments' => array('access content'),
    );
    return $items;
}
 
function form1($form, &$form_state) {
    $form['name'] = array(
        '#type' => 'textfield',
        '#title' => t('Name'),
        '#required' => TRUE,
    );
    $form['submit'] = array(
        '#type' => 'submit',
        '#value' => t('Go'),
    );
    return $form;
}
 
function form2($form, &$form_state) {
    $form['name'] = array(
        '#type' => 'textfield',
        '#title' => t('Name2'),
        '#required' => TRUE,
    );
    $form['submit'] = array(
        '#type' => 'submit',
        '#value' => t('Go2'),
    );
    return $form;
}
 
function test_page(){
    $forms = array();
    $forms['first']=drupal_get_form('form1');
    $forms['second']=drupal_get_form('form2');
    return $forms;
}


Как будет выглядеть функция example_theme()? В общем мне нужно на одной страницце отобразить две формы, причем разметкаlдолжна быть в файле template-file, там, наверное, должно наверное быть что нить вот такое вот:

Код: php
1.
2.
3.
4.
5.
6.
<table border="1">
    <tr>
        <td><?php print drupal_render($forms['first']['name']); ?></td>
        <td><?php print drupal_render($forms['second']['name']); ?></td>
    </tr>
</table>


Помогите пожалуйста!
...
Рейтинг: 0 / 0
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Drupal 7- Отобразить две формы на странице с использованием template файла / 1 сообщений из 1, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]