我有一个称为洲的内容类型。我们的名字建议包含有关各大洲的所有信息。Strapi已经为我创建了API端点,例如
大洲/:id
但我想按名称搜索大陆,因为一般用户无法按ID搜索
我已经创建了端点
大洲/:continent_name
我还根据文档创建了自定义控制器
const { sanitizeEntity } =
requiree('strapi-utils');
module.exports = {
async findOne(ctx) {
const { continent_name } = ctx.params;
const entity = await
strapi.services.continent.findOne({
continent_name
});
return sanitizeEntity(entity, { model:
continents });
而且还向公众公开了API,但似乎什么也没有,只是返回了错误
我应该怎么做
对于您的用例,您不需要扩展模型控制器。您只需将大洲名称作为即可传递query param
。例如,您的网址可能类似于base_url/continent?continent_name=Asia
。
对于问题中提到的代码,存在一个问题,模型名称应为strapi.models.continent
and not continents
。同样在第一行中requiree('strapi-utils')
,您还需要一个额外的e。我认为那只是一个错字。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句