当我尝试在Apigility中使用db-connected创建新服务时,我收到错误Unable to fetch service
。收到错误后,服务已创建,但如果我选择此服务,则会收到错误[Error] Failed to load resource: the server responded with a status of 404 (Not Found) (Hookit-V1-Rest-Vitrine_usuario-Controller, line 0)
。
似乎总是在我在名称中包含" _"的表中创建数据库连接服务时发生。
我在控制台中遇到的错误是:
zf-apigility
我检查了模块的配置,并且已经创建了参数。
在节点resource_class
中的模块配置中,O删除了参数contourc
并运行服务......它工作正常。
但我无法在管理中同步该服务。
有人知道如何解决它以在Apigility的管理员中同步服务吗?
答案 0 :(得分:1)
Alessandro Garcez是对的。此合并https://github.com/zfcampus/zf-apigility-admin-ui/pull/59
已解决此问题但是,此合并已被覆盖,在最新版本中,您将遇到同样的问题。我提出了拉回请求,要求恢复Alessandro Garcez提到的fix。
答案 1 :(得分:0)
似乎在创建新服务时,如果表名包含下划线(_),API会将其转换为看起来像CamelCase的内容。
但是当UI想要为这个新创建的服务创建字段时,它(UI)仍将使用带有下划线的表名,当访问api时(/ apigility / api / module // rest / --Rest - 控制器/输入滤波器)
但是这次API会期望使用tablename来指定控制器部分: (/ apigility / API /模块//其余/ - 休息 - 控制器/输入滤波器)
它已被修复但未被解除,我不知道为什么。
有一个公开讨论https://github.com/zfcampus/zf-apigility-admin-ui/issues/78。
现在可以按照这种方式:
更改文件src/apigility-ui/service/api.service.js
中的函数capitalizeFirstLetter,在返回前添加行var string = string.replace(/(\w)/g, function(,letter) { return letter.toUpperCase(); });
。