Banner de perfil
0

John Rodriguez

@johnrodriguez

Medellín, Colombia

Error instalación de Drupal Console

John Rodriguez@johnrodriguez

No he podido instalar drupal console en la versión 9 de Drupal.

Aparece un error. Pero solo en Drupal 9, en Drupal 8 funciona.

Que puede ser.


No se ve barra de Symfony profiler

John Rodriguez@johnrodriguez

Saludos.

Instalé el paquete de Symfony profiler y symfony está en modo desarrollo. ¿cómo activo la barra?

Gracias


Archivo install en temas.

John Rodriguez@johnrodriguez

En este punto , donde vemos la estructura de un módulo, con las consultas que he realizado en diferentes sitios, no veo que la estructura de archivos de los temas tengan un archivo .install para crear tablas en el esquema de base de datos. Drupal tiene un schema api para módulos, ¿no aplica igual para los temas?

Gracias por la ayuda.


Select Ajax en Drupal

John Rodriguez@johnrodriguez

Saludos compañeros y de antemano gracias por la ayuda.

Estoy programando un formulario con Drupal. Tengo un campo Que muestra en en select los departamentos o provincias de mis país. Al seleccionar cada departamento o provincia, este muestra las ciudades y municipios en otro campo select.

Para aclarar: Un campo select de Departamentos o Provincias llena por ajax otro select con ciudades. Funciona bien, envía bien y almacena bien en la base de datos. El asunto no me cuadra cuando refresco la página desde el botón de recargar del navegador. Los campos que están definidos desde el formulario se conservar, pero el campo ajax vuelve a su estado natural. En otras palabras: el select conserva el departamento o provincia y el select donde se llena con AJAX las ciudades se limpia . Este comportamiento sucede cuando recargo el navegador. La solución es que el usuario debe volver a escoger el departamento para seleccionar la ciudad.

Agradezco la ayuda.

Definición de los campos para Provincias y ciudades

//    Departamento de expedición del documento. Solo para registro civil, cédula y tarjeta de identidad
   $form['datos_solicitante']['contenedor_datos']
   ['column_departamento_expedicion_documento'] = [
     '#type' => 'container',
     '#attributes' => [
       'class' => ['column', 'is-4'],
     ],
     '#states' => [
       'visible' => [
         ':input[name="tipo_documento_solicitante"]' => [
           ['value' => '1'],
           ['value' => '2'],
           ['value' => '3'],
         ],
       ],
     ],
   ];
   $form['datos_solicitante']['contenedor_datos']
   ['column_departamento_expedicion_documento']['departamento_expedicion_documento'] = [
     '#type' => 'select',
     '#title' => $this->t('Departamento de expedición del documento (obligatorio)'),
     '#description' => $this->t('Seleccion el departamento donde sacó su documento de identificación'),
     '#required' => TRUE,
     '#required_error' => $this->t('El departamento de expedición del documento es obligatorio'),
     '#options' => $this->departamento(),
     '#prefix' => '<div class="has-text-centered mb-3"><span class="cuadro-numero py-2 px-2 is-inline-block has-text-white border-radius-20">6.2</span></div>',
     '#ajax' => [
       'callback' => [$this, 'ciudadesColombia'],
       'progress' => [
         'type' => 'bar',
         'message' => $this->t('Consultando...'),
       ],
       'disable-refocus' => TRUE,
     ],
     '#states' => [
       'required' => [
         ':input[name="tipo_documento_solicitante"]' => [
           ['value' => '1'],
           ['value' => '2'],
           ['value' => '3'],
         ],
       ],
     ],
     '#validated' => TRUE,
   ];

//    Ciudad de expedición del documento
   $form['datos_solicitante']['contenedor_datos']
   ['column_ciudad_expedicion_documento'] = [
     '#type' => 'container',
     '#attributes' => [
       'class' => ['column', 'is-4'],
     ],
     '#states' => [
       'visible' => [
         ':input[name="tipo_documento_solicitante"]' => [
           ['value' => '1'],
           ['value' => '2'],
           ['value' => '3'],
         ],
       ],
     ],
   ];

Función de llamada AJAX

1 2 $codigo_departamento = $form_state->getValue( 3 'departamento_expedicion_documento' 4 ); 5 6 if (!empty($codigo_departamento)) { 7 $cliente = Drupal::httpClient(); 8 $datos_municipios = $cliente->get( 9 "https://www.datos.gov.co/resource/xdk5-pm3f.json?c_digo_dane_del_departamento={$codigo_departamento}" 10 )->getBody(); 11 12 $ciudades = Drupal\Component\Serialization\Json::decode($datos_municipios); 13 14 $data_ciudades = []; 15 16 foreach ($ciudades as &$ciudad) { 17 $data_ciudades[$ciudad['c_digo_dane_del_municipio']] = $ciudad['municipio']; 18 } 19 20 ksort($data_ciudades); 21 22 $form['datos_solicitante']['contenedor_datos'] 23 ['column_ciudad_expedicion_documento']['ciudad_expedicion_documento']['#options'] = $data_ciudades; 24 25 $form['datos_solicitante']['contenedor_datos'] 26 ['column_ciudad_expedicion_documento']['ciudad_expedicion_documento']['#validate'] = TRUE; 27 28 } else { 29 $form['datos_solicitante']['contenedor_datos'] 30 ['column_ciudad_expedicion_documento']['ciudad_expedicion_documento']['#options'] = ['' => '- Seleccionar -']; 31 } 32 33 $data_form = $form['datos_solicitante']['contenedor_datos'] 34 ['column_ciudad_expedicion_documento']['ciudad_expedicion_documento']; 35 36 $response = new AjaxResponse(); 37 38 $response->addCommand(new ReplaceCommand('#ciudades-colombia', $data_form)); 39 40 return $response; 41 42 }~~~

Bloque de alertas en Drupal

John Rodriguez@johnrodriguez

Saludos compañeros y de antemano gracias por la ayuda.

En cuál bloque o sección drupal muestra las alertas.

Gracias


Versionar el archivo package-lock.json

John Rodriguez@johnrodriguez

Saludos amigos de la comunidad.

¿Es correcto versionar el archivo package-lock.json?.

Tengo un proyecto y utilizo webpack. Las dependencias son registradas en el archivo package.json y se guarda un arbol de información en el archivo package-lock.json. Obviamente trabajo con git y quiero saber si debo incluir el archivo package-lock.json en el repositorio.

De nuevo gracias por la ayuda.


instalar Vue

John Rodriguez@johnrodriguez

Saludos.

¿Puedo instalar Vue con npx?

Gracias


Petición http

John Rodriguez@johnrodriguez

Aunque PHP es lenguaje servidor, quiero saber si puedo modificar la estructura de una petición http. Hago referencia a las líneas que muestran el método, la versión del protocolo y la cabeceras. Se que con header se puede modificar solo las cabeceras de respuesta. Quiero modificar solo datos de la petición.

Gracias


Obtener código fuente desde un archivo compilado

John Rodriguez@johnrodriguez

Es posible de un código ya compilado en Java, ¿Obtener el código fuente? ¿Qué hacer si por alguna razón se pierde el código fuente y solo queda el archivo compilado?

Gracias por la ayuda