自定义模块不会出现在Drupal中

时间:2016-02-03 10:36:17

标签: php drupal

我需要构建一个Drupal模块,该模块从API收集数据并在页面上创建一个显示指定格式数据的块。我已经下载并安装了Drupal 8.0 Alpha2。

根据我所获得的所有分散的非信息点和信息,我真的很难看到我想要做的事情。

在模块内部,我创建了一个名为custom的目录,在其中放置了一个名为“sidebar_currency”的文件夹。

* .info.yml

我创建了这个文件的最低要求:

name: Sidebar Currency module
description: 'Exercise Module.'
package: Custom
hidden: false
type: module
core: 8.x

我添加了hidden:false条目,因为我收到了“找不到页面”错误。

路由如下:

sidebar_currency.content:
  path: '/currency'
    defaults:
      _controller: 'Drupal\sidebar_currency\Controller\SidebarCurrencyController::content'
      _title: 'Sidebar Currency'
      requirements:
        _permission: 'access content'

在控制器条目中,我试图在Drupal命名空间之前添加反斜杠,例如'\ Drupal的\ sidebar_currency ......'。这根本没有用。

以下是我的模块结构:

DRUPAL_INSTALL_DIR
|_ modules
  |_ custom
    |_ sidebar_currency
      }_ src
        |_ Controller
          |_ SidebarCurrencyController.php
      |_ sidebar_currency.info.yml
      |_ sidebar_currency.routing.yml
      |_ composer.json

下面是我的控制器,我非常希望看到屏幕上弹出一些东西。

namespace Drupal\sidebar_currency\Controller;

use Drupal\Core\Controller\ControllerBase;

class SidebarCurrencyController extends ControllerBase
 {
   public function content()
   {
       return array(
          '#type' => 'markup',
          '#markup' => $this->t('List of currency'),
        );
     }
  }

我很难在CMS上的Extend选项卡中看到此模块,除了已经预安装的所有其他模块。我已从配置菜单中清除所有缓存,但仍然看不到任何内容。

我是否需要在网站内编写代码而不是当前所在的位置?有人可以帮忙,并指出我正确的方向,我想这样做吗?提前谢谢。

1 个答案:

答案 0 :(得分:0)

事实证明,为了让我的模块显示我需要做的就是添加 module_name .module文件,即使它是空的,但没有内容。

enter image description here