所以我有我的自定义实体类型,按照官方教程创建它:
https://docs.sulu.io/en/2.2/book/extend-admin.html
然而,我得到的实体不像标准页面或文章那样可翻译。我也没有任何关于如何使其可翻译的信息。预期行为只是作为那些标准类型工作。 如何实现?
答案 0 :(得分:2)
基本上要做三件事:
您必须为自定义实体添加一个新的 Translation
实体。因此,如果您有一个 Event
实体,则需要一个额外的 EventTranslation
实体。见https://github.com/sulu/sulu-workshop/tree/master/src/Entity
您需要告诉 Sulu,您的自定义实体可通过将可用区域设置添加到您的 AppAdmin
类中的视图来翻译,请参阅 https://github.com/sulu/sulu-workshop/blob/master/src/Admin/EventAdmin.php#L74
您需要调整自定义实体的管理控制器(它现在会收到一个 locale
请求参数)以将本地化的属性持久化到 CustomEntityTranslation
而不是 CustomEntity
本身,见https://github.com/sulu/sulu-workshop/blob/master/src/Controller/Admin/EventController.php
总之,Sulu 只负责在右上角显示区域设置切换器,并将当前选择的区域设置作为 locale
参数附加到您的 api 调用中。其他一切完全取决于您,您必须像在普通的 symfony 应用程序中一样实现它