代码之家  ›  专栏  ›  技术社区  ›  Kirzilla

一个404页的管理员控制器和其他404页的其他控制器,如何?

  •  2
  • Kirzilla  · 技术社区  · 15 年前

    我不明白如何才能设置一个404页为丢失的管理控制器方法和其他404页为所有其他控制器的方法。

    我正在写我自己的MVC,我不知道如何实现这个特性?

    3 回复  |  直到 12 年前
        1
  •  2
  •   mobius    15 年前

    默认情况下,有一个名为ErrorHandler的前端控制器插件。当从应用程序中的任何位置抛出异常时,ErrorHandler插件将捕获异常。

    因此,我猜可以在ErrorController上做出任何决定,您可以考虑抛出异常的模块/控制器/操作点。

        2
  •  1
  •   Viper_Sb    15 年前

    在MVC中可以有权限的概念,大部分情况下它被认为是身份验证,但不一定是这样。

    如果你有一个管理员控制器,那么我们假设你知道用户是谁,当他们访问你的网站。因此,我们可以用它来找出使用哪个404页。

    另一个概念是有管理“页面”和网站“页面”,因此,如果有人正在查看您的/admin/部分的网站,管理404页显示,否则正常的404页显示。

        3
  •  1
  •   js1568    15 年前

    Zend框架使用的一个解决方案是模块的概念。模块是控制器、模型、视图及其提供特定功能所需的所有组件的分组。我通常会编写主MVC实现,然后为特定于管理的MVC实现添加一个模块目录。为了增加代码重用,可以让代码扩展主应用程序代码。

    有关MVC模块背后的策略的更多信息,请参见: http://framework.zend.com/manual/en/zend.controller.modular.html

    推荐文章