Drupal 8 第一个 MVC

Drupal 8 first MVC

我正在尝试访问我的第一个控制器并使用 drupal 8 查看自定义模块。我是新手,这是我的第一个自定义模块。

my_module.info.yaml 位于 /modules/custom/my_module

name: My Own Custom Module 
description: A silly example module
type: module
core: 8.x

有了这个,我就可以去我的分机激活模块了。

至此,模块已安装。

现在,我想尝试打我的第一个树枝模板

为了这样做

my_module.routings.yaml 位于 /modules/custom/my_module

my_module.article_list:
  path: 'my_module/articles'
  defaults:
    _controller: '\Drupal\my_module\Controller\ArticleController::page'
    _title: "Title routing"
  requirements:
    _permissions: 'access content'

我的控制器位于 /modules/custom/my_module/src/Controller

<?php 
    namespace Drupal\my_module\Controller;

    class ArticleController{

        public function page(){

            $items = array(
                array('name' => 'Article one'),
                array('name' => 'Article 2')
                array('name' => 'Article 3')
            );

            return array('#theme' => 'article_list',
            '#items' => $items,
            '#title' => 'Liste d\'article');
        }
    }

?>

article-list.html.twig 位于 /modules/custom/my_module/src/templates

<h4>{{ title }}</h4>

<ul>
{% for article in items %}
    <li>{{article.title}}</li>
{% endfor %}
</ul>

my_module.module 位于 /modules/custom/my_module

<?php

function my_module_theme($existing, $type, $theme, $path){
return array('article_list' => array('variables' => array('items' => array(), 'title' => '')));
}

?>

但是,当我尝试访问我的模板时,我遇到了一个未找到的页面

http://localhost:9000/drupal-8.7.8/index.php/my_module/articles

感谢您的帮助。

不是my_module.routings.yaml

但是my_module.routing.yml

另外我认为路径参数必须以斜杠开头:

path: '/my_module/articles'