我正在关注Modules, Routes and Controllers教程。但是,我一直没有找到" Page找不到"无论"清除所有缓存"。
dino_roar.info.yml文件:
name: Dino ROAR
type: module
description: "ROAR at you"
package: Custom
core: 8.x
dino_roar.routing.yml
dino_says:
path: /the/dino/says/
defaults:
_controller: Drupal\dino_roar\Controller\RoarController::roar
requirements:
_permission: 'access content'
和src / Controller / RoarController.php文件:
<?php
namespace Drupal\dino_roar\Controller;
use Symfony\Component\HttpFoundation\Response;
class RoarController
{
public function roar(){
return new Response('ROOOOAR');
}
}
访问时:http://drupal-8.dd:8083/the/dino/says/我收到页面未找到错误。任何建议都非常感谢。
答案 0 :(得分:0)
主模块信息yml文件必须按以下方案命名:
module_name.info.yml
所以你的模块是dino_roar.info.yml。你还需要启用你的模块,但据我所知,当没有正确的命名信息yml文件时,Drupal甚至不知道你的模块。
还要确保您的文件夹结构正确无误:
dino_roar
--> src
--> Controller
RoarController.php
dino_roar.info.yml
dino_roar.routing.yml
答案 1 :(得分:0)
在Drupal.org上得到Shashwat Purav的帮助。下面是我改为的路由文件。
dino_roar.dino_says:
path: /dino/says
defaults:
_controller: '\Drupal\dino_roar\Controller\RoarController::roar'
requirements:
_permission: 'access content'
答案 2 :(得分:0)
我认为这是因为您的原始路由问题, 你应该改变&#34;路径:/ / / dino /说/&#34;到&#34;路径:/ / / dino /说&#34;
删除最后一个斜线后,应该没问题。