【问题标题】:Cannot import resource error, FosRestBundle Throws InvalidArgumentException无法导入资源错误,FosRestBundle Throws InvalidArgumentException
【发布时间】:2013-06-06 15:19:22
【问题描述】:

您好,我在使用 FostRestBundle 时遇到了一个奇怪的问题。

第一个错误是:

InvalidArgumentException: 每个父控制器都必须有get{SINGULAR}Action($id) 方法 其中 {SINGULAR} 是关联对象的单数形式

第二个:

无法从“/home/a15net/public_html/game/app/config/routing.yml”导入资源“/home/a15net/public_html/game/src/ATL/ContentBundle/Resources/config/api_routing.yml”。

我检查了所有“YAML”文件,但没有缩进问题。

尝试更新作曲家两次没有任何帮助。

编辑:Config.yml > http://goo.gl/dqCAu

【问题讨论】:

  • 请分享你的 routing.yml
  • 请分享您的 app/config/routing.yml
  • @Nisam 这个服务比较好:chopapp.com/#ruy299p4

标签: symfony yaml fosrestbundle


【解决方案1】:

您必须从您的 routing.yml 的导入语句中删除“类型”

atl_content_api:
    resource: "@ATLContentBundle/Resources/config/api_routing.yml"

在 api_routing.yml 中,您可以为每个控制器指定其余类型,例如,

acme_user_rest:
    resource: Acme\UserBundle\Controller\UserRestController
    prefix: /api
    type: rest

this博客帮你实现中小企业

【讨论】:

  • 你的帖子帮助我思考我应该做什么。谢谢,但这不是正确的答案。对不起。
【解决方案2】:

--- 不是 --- 解决方案:

如果一个路由有父路由,你不能在它上面加上“type:rest”。您只能在父路由中使用“type:rest”。

示例:

catalogs:
    type: rest
    prefix: api
    resource: ATL\CatalogBundle\Controller\API\CatalogsController
    options:
        expose: true
taxonomy:
    parent: catalogs
    resource: ATL\CatalogBundle\Controller\API\TaxonomyController
    options:
        expose: true 

在写出更多的 cmets 和其他解决方案建议之前,我不会选择这个作为正确答案。

编辑

当您从子路由中删除 type:rest 时,它不再是休息路由了。

【讨论】:

  • 如果你有不止一个父路由,你应该只添加 type:rest 到父路由。这解决了我的多个嵌套“父”路由的问题。
猜你喜欢
  • 1970-01-01
  • 2013-03-14
  • 1970-01-01
  • 2013-01-10
  • 1970-01-01
  • 2015-09-09
  • 1970-01-01
  • 2023-03-21
  • 1970-01-01
相关资源
最近更新 更多