如何将自定义模块从drupal 7.39迁移到drupal 8.0.5

时间:2016-05-26 09:19:43

标签: drupal-8

参考链接:http://www.drupalwoo.com/content/blog/my-first-drupal-8-module

module_name.info.yml

name:module_name description:'用于制作在线模块的模块。' 类型:模块 核心:8.x 包:自定义 版本:8.x

module_name.routing.yml

module_name_report:     路径:'admin / module_name'     默认值:         _title:'module_name Reports'         _controller:'\ Drupal \ module_name \ Controller \ module_nameController :: module_nameReport'     要求:         _permission:'访问内容'

module_name_myschool:     路径:'admin / module_name / myschool'     默认值:         _title:'我的学校module_name报告'         _controller:'\ Drupal \ module_name \ Controller \ module_nameController :: mymodule_nameReport'     要求:         _permission:'访问内容'

module_name_allschool:     路径:'admin / module_name / allschool'     默认值:         _title:'All School module_name Reports'         _controller:'\ Drupal \ module_name \ Controller \ module_nameController :: allmodule_nameReport'     要求:         _permission:'访问内容'

module_name_getpsms:     路径:'admin / module_name / getpsms'     默认值:         _title:'所有学校psms报道'         _controller:'\ Drupal \ module_name \ Controller \ module_nameController :: allabcdReport'     要求:         _permission:'访问内容'

module_name.module.yml

阵列(         'title'=>'module_name Reports',         'route_name'=> 'module_name_report',         )         'admin / module_name / myschool'=>阵列(         'title'=>'我的module_name报告',         'route_name'=> 'module_name_myschool',         )         'admin / module_name / allschool'=>阵列(         'title'=>'所有module_name报告',         'route_name'=> 'module_name_allschool',         )         'admin / module_name / getpsms'=>阵列(         'title'=>'所有abcd报告',         'route_name'=> 'module_name_getpsms',         ),

);  

}

/ **  * hook_permission()的实现。  * /

/ * function module_name_permission(){   返回数组(     'administration module_name'=>阵列(     'title'=> t('管理模块名''),     'description'=> t('管理学生模块名。'),     ),

'access module_name' => array(
'title' => t('Access module_name'),
'description' => t('Access Student module_name.'),
),

'create module_name' => array(
'title' => t('Create module_name'),
'description' => t('Create Student module_name.'),
),

'administer module_name reports' => array(
'title' => t('Administer module_name Reports'),
'description' => t('Administer Student  module_name Reports.'),
),  

); } * /

module_name.controller.php

命名空间Drupal \ inquiry \ Controller;

使用Drupal \ Core \ Controller \ ControllerBase;

/ **  * module_name的路由控制器。  * / class module_nameController扩展ControllerBase {

/**
 * Implementation of hook_help().
 */
public function enquiryHelp($path, $arg) {   
}

/**
 * Implementation of hook_init().
 */

public function module_nameInit() {        

}

/ **    *显示查询报告。    * /   public function module_nameReport(){

}

public function mymodule_nameReport(){

}

public function allmodule_nameReport(){}

public function allabcdReport(){

}

文件夹结构

MODULE_NAME     SRC        - controller:module_name.controller.php     module_name.info.yml     module_name.module.yml     module_name.routing.yml

我的问题:

模块显示“扩展”列表。 安装后,模块未显示角色/权限区域的权限。 性能也不会从配置选项卡中发生。

1 个答案:

答案 0 :(得分:0)

我希望以下信息对您有所帮助:

1)Drupal模块升级:模块页面中有一个视频。您可以使用此模块将Drupal 7模块转换为Drupal 8。该模块将提供一些终端命令。

2)Drupal控制台(Click here):如果您可以安装此工具,您会感到惊讶,因为有很多命令,您可以使用终端创建新模块。您可以使用drupal控制台工具来控制控制器,阻止,表单,权限等。

3)我个人对您的看法,请尝试使用以下文档创建您的第一个模块 https://www.drupal.org/developing/modules/8

4)最后探讨drupal 8示例模块。此模块中有更多示例。您可以复制并粘贴并查看输出以供学习。

由于