首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >表对象测试中的MissingRouteException

表对象测试中的MissingRouteException
EN

Stack Overflow用户
提问于 2020-12-01 17:01:12
回答 1查看 73关注 0票数 0

我有一个TableObject,它在afterSave-Event中发送一封电子邮件来通知管理员发生了更改。从cakephp-3切换到cakephp-4后,测试失败,并显示以下错误消息:

代码语言:javascript
复制
Cake\Routing\Exception\MissingRouteException: A route matching ... could not be found.

异常发生在电子邮件模板中的一行,其中我构建了一个链接,如下所示:

代码语言:javascript
复制
$this->Url->build([
    'prefix' => 'Partner',
    'controller' => 'orders',
    'action' => 'view',
    $order->id,
]);

我认为路由不是在测试Tableobject的上下文中设置的,因此反向路由不起作用。(我只在运行测试时出现错误,而不是在应用程序中发送电子邮件时出现错误)。

是否有一种方法可以加载测试中的所有路由?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-12-04 21:17:40

从4.x开始,路由不再自动加载。您需要添加

代码语言:javascript
复制
$this->loadRoutes(); 

加载到您的setUp()中,或者在测试运行之前主动加载它们。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65087451

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档