# 模块入门开发教程

# 安装模块开发助手

模块开发助手可以极大效率的提高模块开发效率,通过 https://modstart.com/m/ModuleDeveloper (opens new window) 下载。

# 创建模块

访问 系统管理 → 模块开发助手,通过常用工具创建模块

模块创建

# 完成模块代码开发

第二步会根据填写的模块基本信息完成模块的创建,并且生成一些示例代码,通过修改和完善模块代码,完成模块的功能开发

模块示例代码

模块的开发请参照《开发示例程序》,该示例中涵盖了几乎所有模块开发规范和技巧。

开发示例程序: https://modstart.com/m/Demo (opens new window)

开发示例程序会不断更新,请随时查看最新的开发示例程序。

# 模块Api接口开发

使用 ModStart 可以很方便的进行接口开发

# 定义接口路由

文件 module/Xxx/Api/routes.php

// 新增以下路由接口
Route::match(['post'], 'xxxx/paginate', 'XxxController@paginate');
Route::match(['post'], 'xxxx/get', 'XxxController@get');
1
2
3

# 开发接口逻辑

文件 module/Xxx/Api/Controller/XxxController.php

<?php
namespace Module\Xxx\Api\Controller;
use Illuminate\Routing\Controller;
use ModStart\Core\Dao\ModelUtil;
use ModStart\Core\Input\InputPackage;
use ModStart\Core\Input\Response;

class XxxController extends Controller
{
    public function paginate()
    {
        $input = InputPackage::buildFromInput();
        $page = $input->getPage();
        $pageSize = $input->getPageSize();
        $option = [];
        $paginateData = ModelUtil::paginate('xxx', $page, $pageSize, $option);
        return Response::generateSuccessData([
            'page' => $page,
            'pageSize' => $pageSize,
            'total' => $paginateData['total'],
            'records' => $paginateData['records'],
        ]);
    }

    public function get()
    {
        $input = InputPackage::buildFromInput();
        $id = $input->getInteger('id');
        $record = ModelUtil::get('xxx', $id);
        return Response::generateSuccessData([
            'record' => $record,
        ]);
    }
}

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
Last Updated: a year ago