¿Cómo configurar el tema de administrador para una ruta?


9

Según el manual de Drupal, la definición de ruta acepta el parámetro llamado _theme. Lamentablemente, este parámetro está documentado como "TODO" .

¿Se puede usar para forzar el tema de administrador para la ruta? ¿Es posible inyectar el parámetro de configuración con el nombre del tema de administrador aquí?

Parece que otra solución es usar el negociador de temas, sin embargo, el _themeparámetro parece muy tentador y más simple de usar.

Respuestas:


14

Estás buscando la opción _admin_route:

aggregator.feed_add:
  path: '/aggregator/sources/add'
  defaults:
    _controller: '\Drupal\aggregator\Controller\AggregatorController::feedAdd'
    _title: 'Add feed'
  requirements:
    _permission: 'administer news feeds'
  options:
    _admin_route: TRUE

2
Otra característica de D8 indocumentada.
SiliconMind

55
Puede que la documentación aún no sea tan buena para D8, pero los registros de cambios son: drupal.org/node/2224207 . Siempre busque allí si sabe cómo funcionó algo en D7 (encontrado mediante la búsqueda de "ruta de administrador"). drupal.org/developing/api/8/routing parece un buen lugar (subpágina más o menos) para documentar esto, esperando la documentación que escribirá sobre esto :)
Berdir

1
Entonces, ¿_admin_route simplemente lo cambia para que use el tema predeterminado en lugar del administrador?
Matt

1
Recibo una InvalidArgumentException: el requisito de enrutamiento para las "opciones" debe ser una cadena. cuando intente usar esta solución
Matt

3
module.myroute:
  path: '/path/path2'
  defaults:
    _controller: 'Drupal\module\Controller\MyController::add'
    _title: 'Add element'
  options:
    _admin_route: 'TRUE'

Debe usar '' alrededor de TRUE, si no, obtendrá 'InvalidArgumentException: el requisito de enrutamiento para "opciones" debe ser una cadena'


El ejemplo aquí lo muestra sin comillas: drupal.org/docs/8/api/routing-system/structure-of-routes, así que ya no creo que sea necesario.
andeersg
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.