I have a weird behavior in my own extension when using a slug.
The slug generator in my TCA looks like this:
'slug' => [
'label' => 'Slug',
'exclude' => 1,
'config' => [
'type' => 'slug',
'generatorOptions' => [
'fields' => ['title'],
'fieldSeparator' => '/',
'prefixParentPageSlug' => true,
'replacements' => [
'/' => '',
],
],
'fallbackCharacter' => '-',
'eval' => 'uniqueInSite',
'default' => ''
],
],
It generates the slugs correctly.
It is also persisted as expected in the database.
The routeEnhancer looks like this:
ReferenceDetail:
type: Extbase
limitToPages:
- 82
extension: reference
plugin: referencedetail
routes:
- routePath: '/{ref}'
_controller: 'Reference::show'
_arguments:
ref: reference
aspects:
ref:
type: PersistedAliasMapper
tableName: tx_reference_domain_model_reference
routeFieldName: slug
In my frontend everything looks fine. Links look like:
https://xyz.info/reference/detail/name-reference/
But when clicking on it I end up with a 404.
When I switch from routeFieldName: slug
to routeFieldName: name
or routeFieldName: uid
it works perfectly? Has anyone an idea what might goes wrong with my slug?
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…