By disasm on
Change record status:
Published (View all published change records)
Project:
Introduced in branch:
8.x
Description:
The old 'converters' option no longer exists. It's been replaced by 'parameters'
options:
converters:
foo: 'user'New way:
options:
parameters:
foo:
type: 'entity:user'In a Route Subscriber, the options array looks like this:
array(
'parameters' => array(
'entity' => array(
'type' => 'entity:' . $entity_type,
),
),
)
ParamConverters need to implement ParamConverterInterface and be tagged paramconverter in services.yml file
class LanguageConverter implements ParamConverterInterface {
/**
* {@inheritdoc}
*/
public function convert($value, $definition, $name, array $defaults) {
$languages = language_list(Language::STATE_ALL);
return isset($languages[$value]) ? $languages[$value] : NULL;
}
/**
* {@inheritdoc}
*/
public function applies($definition, $name, Route $route) {
if (!empty($definition['type']) && $definition['type'] == 'language') {
return TRUE;
}
return FALSE;
}
}
services:
language_converter:
class: Drupal\language\LanguageConverter
tags:
- { name: paramconverter }