カスタム構成フォームを作成しているときに、アクセスが拒否されました。ただし、フォームの/ translationページのみ。設定フォーム自体に問題なく到達し、入力し、更新することができます。
構成はadmin/config/regional/config-translationページに表示されますが、何らかの理由で翻訳できません。
何か案は?
ファイルの概要:
schema.yml
faq.settings:
type: mapping
label: 'FAQ settings'
mapping:
faq_title:
type: text
label: 'Title'
faq_text:
type: text
label: 'Text'
faq_cta_label:
type: text
label: 'CTA label'
faq_cta:
type: text
label: 'CTA'
...
routing.yml
aform.faq:
path: '/admin/config/aform/faq'
defaults:
_form: '\Drupal\aform\Form\faqForm'
_title: 'FAQ block'
requirements:
_permission: 'administer site configuration'
...
config_translation.yml
aform.faq:
title: 'aform FAQ'
base_route_name: aform.faq
names:
- faq.settings
...
同様の問題に遭遇した人にとっては、スキーマ、ルーティング、config_translationsのymlファイルだけでなく、インストールのymlファイルに各構成を定義して、構成がDrupalによってピックアップされるようにする必要があるようです。
したがって、次のように、カスタムモジュールディレクトリの/ installにfaq.settings.ymlファイルを含める必要がありました。
faq_title: ''
faq_text: ''
faq_cta_label: ''
faq_cta: ''
langcode: en
そして、あなたは翻訳可能な設定フォームを手に入れました。
すべての名前が正しくなるまでには、かなり時間がかかる場合があります。これに苦労している人のために、ここに実用的な例を含むモジュールを公開しました: https://github.com/VITObelgium/drupal-boilerplate