如何在Drupal模块中抛出404错误?

web*_*ear 20 drupal drupal-7 drupal-8

我需要在模块中抛出404错误.或者可能是否有可能为菜单挂钩设置所需的选项?

Aye*_*h K 26

这很容易.这些应该处理看门狗,HTTP 404响应代码和其他相关的事情.

对于Drupal 6和7

在模块的页面回调中,执行以下操作: return drupal_not_found();

对于Drupal 8

在定义中class::method()引用_controller(即页面回调或负责为请求生成输出的方法),执行:throw new NotFoundHttpException();

参考

  • 对于drupal 8` throw new NotFoundHttpException();`请参阅https://www.drupal.org/node/1616360 (3认同)

Muh*_*eda 25

对于Drupal 8

use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
// then
throw new NotFoundHttpException();
Run Code Online (Sandbox Code Playgroud)


cil*_*fen 5

MENU_NOT_FOUND 应该在页面回调函数中返回。

希望报告“找不到页面”消息的页面回调函数应返回MENU_NOT_FOUND,而不是调用drupal_not_found()。— http://api.drupal.org/api/drupal/includes!common.inc/function/drupal_not_found/7