dabogee: Блог

Главные вкладки

Отрисовка формы

3 сентября 2009 в 8:20

Drupal'чане Подскажите ,пожалуйста, где что проглядел
Делаю отрисовку страницы c помощью hook_menu
создал запись в файле mymodule.module
создал функцию в файле *.inc

<?php
функция формы
function select_mounth($form_state){
    
// получаем список названий месяцев с их id
    
$aMounths get_mounth_names();
    
$iMounth = (integer)date("n");
    
    
// добавляем поле select в форму
    

    

$aYears = array((date('Y')-1)=>(date('Y')-1),date('Y')=>date('Y'),(date('Y')+1)=>(date('Y')+1));

    

$form['eyear'] = array(
            
'#title' => t('месяц'),
            
'#type' => 'select',
            
'#options' => $aYears,
            
'#default_value' => date('Y'),
    );
    
$form['save'] = array(
            
'#type' => 'submit',
            
'#value' => 'Показать',
        );   
   return 
$form;
}

function 

admin_mon_rqm(){
   ...
   echo 
"test";
   
вызываю 
   $output 
.= drupal_get_form('select_mounth');   // отрисовка нужной мне формы
   
$output .= theme_table($head$rows$attr);   // далее выводим таблицу
   
...
   
$output .= theme_render_template(drupal_get_path('theme''mytheme') .'/admin_mon_rqm.tpl.php', array('content' => $items));   // какой то мой контент из файла шаблона
   
return $output;
}
?>

при первичной загрузке этой страницы по адресу, указанному в hook_menu все выводиться на экран, а при нажатии на кнопку субмит формы выводиться только echo "test"; т.е. на drupal_get_form('select_mounth'); все застревает. Объясните ,пжлста, что я делаю не так.

как..создать тип материала, форму заполнения его полей, и форму отображения

16 июля 2009 в 11:48

Доброго времени суток!

Начал изучать друпал попутно возникло несколько вопросов.
1. Нужно создать объект с несколькими полями(свойствами) сделать к нему форму для заполнения этих полей, а так же форму отображения всех элементов.

Пока у меня следующее видение решения этой проблемы (на уровне написания кода и создания файлов):
- создать вручную таблицу в БД для этого объекта с необходимым набором полей
- создать новый модуль
! добавить в хук меню модуля необходимые item's для формы создания элементов объекта и формы вывода
! написать обработку данных в файле inc для каждого из действий
! сделать визуальные шаблоны *.tpl.php в папке темы для формы создания и отображения
! связать все по средствам меню

Что из этого можно сделать автоматически через панель и в каких разделах Smile Пока я дошел до создания типа материала.

2. Существует ли в друпале такое понятие как "модель" т.е. чтобы не писать в разных *.inc файлах один и тот же код - например запрос чегото из базы, а вызвать метод модели в котором собственно все действия с данными уже и описываются.

Прошу если и не отвечать на каждый пункт, то по крайней мере написать ключевые слова для поиска, т.к. пока я не понимаю какой термин за что отвечает.

Надеюсь на Вашу поддержку Smile