drupal 7 – ¿Cómo resuelvo el error "El argumento 1 pasado a drupal_attributes () debe ser una matriz" en mi system_settings_form ()?

Pregunta:

Por lo general, no publico preguntas específicas como esta y pido ayuda sobre un tema específico, pero estoy al final de mi cuerda perdiendo el tiempo …

Tengo un módulo D7 simple como se ve a continuación, cuando cargo la página (el elemento de menú de quién está exactamente donde quiero que esté) aparece el siguiente error:

Error fatal recuperable: el argumento 1 pasado a drupal_attributes () debe ser un arreglo, dado como nulo, llamado en /path/to/site/public_html/includes/form.inc en la línea 3106 y definido en drupal_attributes () (línea 2257 de / path /to/site/public_html/includes/common.inc).

como puede ver, la declaración del formulario en sí es muy simple, y todo funciona perfectamente hasta que se carga la página.

nota, que he visto: 3106 en form.inc y el elemento $ está poblada pero atribuye no existe – lo que me estoy perdiendo ???

<?php
/**
 * Implements hook_menu().
 */
function attach_images_menu() {

    $items['admin/structure/types/manage/%/attach/images'] = array(
        'title' => 'Attach: Images',
        'page callback' => 'attach_images_settings',
        'access arguments' => array('access administration pages'),
        'weight' => '10',
        'type' => MENU_LOCAL_TASK,
    );

    return $items;

}

function attach_images_settings() {
    //$content_type = arg(4);
    $form['attach_images_amount_'] = array(
         '#type'   => 'textfield',
         '#title'  => 'Amount',
         '#default_value' => variable_get('attach_images_amount_',1),
    );
  return system_settings_form($form);
}

?>

Respuesta:

$items['admin/structure/types/manage/%/attach/images'] = array(
    'title' => 'Attach: Images',
    'page callback' => 'attach_images_settings',
    'access arguments' => array('access administration pages'),
    'weight' => '10',
    'type' => MENU_LOCAL_TASK,
);

Esto debería ser 'page callback' => 'drupal_get_form', 'page arguments' => array('attach_images_settings') . (no olvide limpiar la caché después de realizar el cambio)

Además, las devoluciones de llamada de formulario en Drupal 7 tienen un argumento $ form obligatorio.

Leave a Comment

Your email address will not be published. Required fields are marked *

web tasarım