Sulu:自定义实体类型 - 缺少 FOS rest api 路由

Sulu: custom entity type - FOS rest api routes are missing

我按照 Sulu 文档将自定义实体类型添加到 Sulu,并且在这一点上:

https://docs.sulu.io/en/2.2/book/extend-admin.html#configure-resources

调用时:bin/adminconsole debug:router | grep event

我应该得到各种路线才能完全休息api。

但是,当我这样调用它时,我只列出了一条路线:

app.get_events                                  GET      ANY      ANY    /admin/api/events.{_format} 

那里的文档说“如果您也已经创建了其他操作,..”,但是 admin EventController class 再次具有该注释:

/**
 * @RouteResource("event")
 */

.. 所以我不确定我应该为每个休息操作(GET,PUT,DELETE ...)手动创建一个方法还是应该自动创建它们?如果它们应该自动创建,那为什么我看不到这些路线?

None 的操作是自动生成的。如果您按照有关扩展管理的文档进行操作,您可能只实现了 cgetAction() 方法,对吗?因此只注册了 app.get_events 路由。一旦你实施例如一条postAction(),一条app.post_event路线将为您注册。但是你总是必须自己为你的自定义实体实现 crud 功能,Sulu 不能为你做这件事,因为这完全取决于你,你的自定义实体如何存储(也可以作为文件存储在你的文件系统中或作为 elasticsearch 中的文档)

通常情况下,查看 Sulu 的内部包(SuluTagBundle is quite an easy one) or other resources on github (e.g. Sulu Workshop and Sulu Demo)以了解这些东西是如何工作的是很有帮助的。