Foros del Web » Creando para Internet » Sistemas de gestión de contenidos » Drupal »

Hook form alter - mantener atributos en el campo del form original

Estas en el tema de Hook form alter - mantener atributos en el campo del form original en el foro de Drupal en Foros del Web. Hola, veran estoy haciendo un form_alter, hasta aqui todo bien, la cuestion es que para un campo de ese form solo quiero cambiar el atributo ...
  #1 (permalink)  
Antiguo 06/11/2013, 09:45
Avatar de anacona16  
Fecha de Ingreso: marzo-2010
Ubicación: Bogota DC
Mensajes: 610
Antigüedad: 14 años, 1 mes
Puntos: 52
Hook form alter - mantener atributos en el campo del form original

Hola, veran estoy haciendo un form_alter, hasta aqui todo bien, la cuestion es que para un campo de ese form solo quiero cambiar el atributo weight pero mantener las propiedades del campo original, probe a poner:

Código PHP:
Ver original
  1. $form['message'] = array(
  2.       '#weight' => 2
  3.     );

Pero el campo desarparece en el formulario, aunque utilizando el modulo devel aparece el campo:

Código PHP:
Ver original
  1. message (Array, 3 elements)
  2.  
  3.     #type (String, 8 characters ) textarea
  4.    #title (String, 7 characters ) Mensaje
  5.    #required (Boolean) TRUE

Lo que pregunto se puede hacer, o tengo que declarar el campo por completo?

Gracias.
__________________
Aprendiendo!!!
  #2 (permalink)  
Antiguo 06/11/2013, 11:21
Avatar de MarioAraque
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Valencia
Mensajes: 1.398
Antigüedad: 14 años, 6 meses
Puntos: 265
Respuesta: Hook form alter - mantener atributos en el campo del form original

En realidad desaparece porque lo estás convirtiendo en un array con solo el weight:

Sinceramente lo mejor en estos casos es hacer un dump del formulario en el form_alter, y cambiar el valor que quieras, o añadirlo si se trata de weight:

Código PHP:
Ver original
  1. function mymodule_form_alter(&$form, &$form_state, $form_id){
  2.   echo "<pre>";
  3.   print_r($form);
  4.   echo "</pre>";
  5.   exit;
  6. }

Ahi podés ver los valores que hay en tu formulario (es mejor que filtres por form_id así ves el formulario que querés).
Luego lo demás es trivial seguro.

Saludos.

Etiquetas: atributos, campo, form, original
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 06:41.