【问题标题】:Cakephp2 - Ovrride HttpException wih custom classCakephp 2 - 使用自定义类覆盖 Http 异常
【发布时间】:2016-03-26 09:44:41
【问题描述】:

CakePhp 异常的默认行为是可以传递消息,并且该消息显示在名称和消息键上。我想扩展此功能并在引发异常时为消息和名称键显示不同的值。此外,我想不时提供一组自定义字段。

为了实现这一点,我在 cakephp 中创建了一个自定义的 ExceptionRenderer,它在抛出 cakeexception 并传递一个数组时可以正常工作,但是如果我将一个数组传递给 HTTPException 继承的异常,例如 NotFoundException,它会抛出一个错误。

为了实现这一点,我正在考虑覆盖 cakephp 具有的默认 HTTPException 类,但我无法这样做。我想知道如何做到这一点。

【问题讨论】:

    标签: cakephp cakephp-2.0 cakephp-2.3


    【解决方案1】:

    嗯..这有点棘手...

    您可以在 App 目录中创建一个名为 Error 的文件夹。

    在里面复制这个file,然后在你的bootstrap.php里面替换行

    require CAKE . 'Error' . DS . 'exceptions.php';

    require APP . DS . 'Error' . DS . 'exceptions.php';

    然后您可以开始以您喜欢的方式更改异常。

    这也许可行,但可能会产生一些副作用。例如,如果原始文件在存储库中更新,您可能必须手动更新文件。此外,您还必须限制对 Exception 类的更改,因为您不知道这些类可能在核心内部的什么位置使用,并且您可能会刹车。

    主要是不要更改他们的签名。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-02-20
      • 1970-01-01
      • 1970-01-01
      • 2012-11-15
      • 2023-02-17
      • 1970-01-01
      • 2021-09-08
      • 1970-01-01
      相关资源
      最近更新 更多