отображение значений в форме Help me

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

Аватар пользователя julia_sib julia_sib 17 апреля 2010 в 21:51

Люди, уже спрашивала, но не получила внятного ответа. Как установить значения в форме. Ставлю в форме '#value' => значение, оно появляется в форме, но при проверке друпал считает это поле пустым. '#default_value' => значение не отображается в форме. Уже больше недели мучаюсь и не могу найти решения, а надо срочно.

Комментарии

Аватар пользователя julia_sib julia_sib 17 апреля 2010 в 22:07

В том то и дело, что не отображается, может что не так делаю
в теме ссылка на шаблон
function mytheme_theme() {

return array(

'my_node_form' => array(
'arguments' => array('form' => NULL),
'template' => 'node-mynode-edit'
) );

в шаблоне

 $form['field_my_node_mail'] = array(
    '#type' => 'textfield',
    '#weight' => 3,
    '#title' => t('E-mail'),
    '#required' => 1,
    '#size' => 30,
    '#maxlength' => 64,
    '#value' => "user->mail",
  );           

потом print drupal_render($form['field_my_node_mail']);
где задать значения непонятно

Аватар пользователя xxandeadxx xxandeadxx 17 апреля 2010 в 22:12

Quote:
#value
Описание: Используется для установки значений, которые не могут быть изменены пользователем. Не путать с #default_value, которое всего лишь устанавливает значение по-умолчанию.

#default_value
Описание: Значение поля по-умолчанию. Не путать с #value!

http://api.drupal.ru/api/file/developer/topics/forms_api_reference.html/6

Аватар пользователя julia_sib julia_sib 17 апреля 2010 в 22:18

да это понятно, но как в форму установить значение, чтобы в форме добавления были уже какие-то значения, которые выбираются из базы

Аватар пользователя xxandeadxx xxandeadxx 17 апреля 2010 в 22:23

по ссылке выше миллион примеров

<?php
$form
['title'] = array(
  
'#type' => 'textfield'
  
'#title' => t('Subject'), 
  
'#default_value' => $node->title
  
'#size' => 60
  
'#maxlength' => 128
  
'#required' => TRUE,
);
?>
Аватар пользователя julia_sib julia_sib 17 апреля 2010 в 22:27

ну так они не работают, как в пустую форму установить значение. Или не отображаются или отображаются, но в обоих случаях друпал считает поля пустые

Аватар пользователя graker graker 17 апреля 2010 в 23:36

Не, на тест-странице нормально. Просто не надо переопределять в шаблоне целиком элемент еще раз, надо указывать '#default_value' в функции test_form().

Аватар пользователя julia_sib julia_sib 18 апреля 2010 в 0:03

ну и в итоге, он не показывается. Может не понимаю, но в шаблоне в верстке вставляется print drupal_render. Может шаблон не так задается

Аватар пользователя graker graker 18 апреля 2010 в 0:51

Ну так уберите на время шаблон, выведите нетемизированную форму и посмотрите, чего там как. Сначала сделайте, чтобы необходимый функционал работал, а потом уже украшайте его в шаблонах.

Аватар пользователя julia_sib julia_sib 18 апреля 2010 в 10:35

вообщем, эта фтгня так и не заработала, видать cck где-то перехватывает обработку. Запихала все в свой модуль, у которого таких проблем нет. Жаль конечно, что пришлось извратиться, хотела без модуля обойтись