symfony - ParamConverter 属性 null
问题描述
我的参数转换器有问题。
这些是我的路由:
CrmBundle 路由.yml:
crm_partner:
resource: "@PartnerBundle/Resources/config/routing.yml"
prefix: /{urlname}
PartnerBundle 路由.yml:
crm_partner_dashboard:
path: /dashboard
defaults: { _controller: PartnerBundle:Default:dashboard }
PartnerBundle 默认控制器:
/*
* @ParamConverter("department", options={"mapping":{"urlname":"urlName"}})
*/
public function dashboardAction(Department $department)
{
...
}
这是我的错误:
Unable to guess how to get a Doctrine instance from the request information for parameter "department".
这是我的请求属性....
_controller
"PartnerBundle\Controller\DefaultController::dashboardAction"
_firewall_context "security.firewall.map.context.main"
_locale "fr"
_route "crm_partner_dashboard"
_route_params "urlname" => "shbyjm-europe-1"
"_locale" => "fr"
urlname "shbyjm-europe-1"
你对此有什么解释吗?
此致
解决方案
您还需要在那里添加类。那是你的问题。检查我的代码。
class PostsController extends Controller
{
/**
* @param Post $post
* @ParamConverter("post", class="AppBundle\Entity\Post")
* @return Response
*/
public function showAction(Post $post): Response
{
if (!isset($post)) {
throw $this->createNotFoundException('Post with the provided route not found!');
}
return $this->render(
'@App/pages/post.html.twig',
[
'post' => $post
]
);
}
}
所以它会抛出错误,它无法猜测,因为你没有传递类的完整命名空间名称。
推荐阅读
- machine-learning - CNN 准确率与损失选择
- sql - 在sql中将字符串转换为日期
- python - 上传的图像未保存并在 Django 中显示
- azure - 微服务独立数据库
- sql - oracle sql中是否有count的解析函数
- amazon-web-services - Amazon MQ 和 SQS 有什么区别?
- c# - .Net Core:是否有 HeapDumpOnOutOfMemoryError 开关?
- r - 如何使用 DISTATIS 在 PCA 图中绘制其他维度
- javascript - 我正在尝试使用 momentjs 将变量转换为日期
- laravel - 从 Laravel 表中获取唯一值