Это было задано здесь раньше; но вопрос закрыт, а несколько ответов не содержат достаточной информации.
Я пытаюсь использовать модуль contrib (sitewide_alert), который предоставляет свой собственный пользовательский объект.Я пытаюсь понять, как пропатчить этот модуль, чтобы сделать его доступным (и как это сделать вообще).
В других сообщениях я видел предложения добавить следующее в аннотацию ContentEntityType:
- полевой = ИСТИНА;
- bundle_entity_type = ??
- field_ui_base_route -> различные предложения, но уже существующие для этого модуля, указывающие на форму конфигурации модуля.
Но ни один из них, похоже, не исправил это.
полная аннотация для объекта:
* @ContentEntityType(
* id = "общее_предупреждение",
* label = @Translation("Общесайтовое оповещение"),
* label_plural = @Translation("Общесайтовые оповещения"),
* label_collection = @Translation("Общесайтовые оповещения"),
* обработчики = {
* "storage" = "Drupal\sitewide_alert\SitewideAlertStorage",
* "view_builder" = "Drupal\Core\Entity\EntityViewBuilder",
* "list_builder" = "Drupal\sitewide_alert\SitewideAlertListBuilder",
* "views_data" = "Drupal\sitewide_alert\Entity\SitewideAlertViewsData",
* "translation" = "Drupal\sitewide_alert\SitewideAlertTranslationHandler",
*
* "форма" = {
* "по умолчанию" = "Drupal\sitewide_alert\Form\SitewideAlertForm",
* "добавить" = "Drupal\sitewide_alert\Form\SitewideAlertForm",
* "edit" = "Drupal\sitewide_alert\Form\SitewideAlertForm",
* "удалить" = "Drupal\sitewide_alert\Form\SitewideAlertDeleteForm",
* },
* "route_provider" = {
* "html" = "Drupal\sitewide_alert\SitewideAlertHtmlRouteProvider",
* },
* "access" = "Drupal\sitewide_alert\SitewideAlertAccessControlHandler",
* },
* base_table = "общее_предупреждение",
* data_table = "sitewide_alert_field_data",
* ревизия_таблица = "sitewide_alert_revision",
* ревизия_data_table = "sitewide_alert_field_revision",
* show_revision_ui = ИСТИНА,
* переводимое = ИСТИНА,
* admin_permission = "администрирование объектов предупреждений на сайте",
* entity_keys = {
* "идентификатор" = "идентификатор",
* "ревизия" = "вид",
* "метка" = "имя",
* "uuid" = "uuid",
* "uid" = "user_id",
* "код языка" = "код языка",
* "опубликовано" = "статус",
* },
* ревизия_метаданные_ключи = {
* "revision_user" = "revision_user",
* "revision_created" = "revision_created",
* "revision_log_message" = "revision_log",
* },
* ссылки = {
* "канонический" = "/admin/content/sitewide_alert/{sitewide_alert}",
* "добавить-форма" = "/admin/content/sitewide_alert/добавить",
* "edit-form" = "/admin/content/sitewide_alert/{sitewide_alert}/edit",
* "delete-form" = "/admin/content/sitewide_alert/{sitewide_alert}/удалить",
* "история версий" = "/admin/content/sitewide_alert/{sitewide_alert}/revisions",
* "revision" = "/admin/content/sitewide_alert/{sitewide_alert}/revisions/{sitewide_alert_revision}/view",
* "revision_revert" = "/admin/content/sitewide_alert/{sitewide_alert}/revisions/{sitewide_alert_revision}/revert",
* "revision_delete" = "/admin/content/sitewide_alert/{sitewide_alert}/revisions/{sitewide_alert_revision}/delete",
* "translation_revert" = "/admin/content/sitewide_alert/{sitewide_alert}/revisions/{sitewide_alert_revision}/revert/{langcode}",
* "коллекция" = "/admin/content/sitewide_alert",
* },
* field_ui_base_route = "sitewide_alert.settings",
* ограничения = {
* "ЗапланированнаяДатаПредоставления" = {}
* }
* )
*/
В своем подходе проб и ошибок я заметил, что создал пользовательский интерфейс «Управление полями/отображением/и т. д.» для каждого ранее созданного объекта. Итак, я думаю, что это, возможно, связано с отсутствием определенного пакета? Мой вариант использования не требует создания новых пакетов (аналогично сущности пользователя).
Несмотря на другие опубликованные ответы; я предполагаю, что изменения аннотации недостаточно, чтобы добавить эту функциональность.