开发指导(V1.0)

简称:NetteAdmin ,版本号:V1.0.0

版权所有

V1.0 是基于ThinkPHP8.0开发的一套完整应用软件框架,目前仅使用了Think-ORM、路由、控制器、验证部分、上传。

如果需要改为基于其他PHP框架的软件,可以自行实现对mongodb的操作及以上提到的部分,即可将ThinkPHP8.0框架更换为其他框架。用户如有需要可自行实现。

文档

入门指导

PHP开发文档

其中数据库操作最为重要,请查看开发指导中的数据库章节

技能要求

软件开发需要具有一定的技术能力,以下技能必须掌握。

php开发语言【8.1】

javascript语言

vuejs框架 【2.0】

uniapp框架

对composer安装使用有足够的了解

对mongodb有一定的了解,数据库使用的是mongodb

对redis有一定的了解,缓存使用的是redis

框架

无需考虑前后端分离,项目中采用Thinkphp8.0为基础框架,并在此框架基础上进行一些常用操作封装使用开发更容易。

以下composer包需要开发者阅读源码,了解新增的功能,以便开发时可以找到对应的功能并直接调用。【必须了解】

thefunpower/think

thefunpower/helper

thefunpower/vue

以下composer包需要开发者了解使用方法【可选项】

图片处理使用 intervention/image

markdown使用 michelf/php-markdown

自动加载app.php文件

如在app/admin/app.php 文件将会被自动加载,一般用于写一些函数,这些函数通常情况是为了实现项目具体需要的功能。

其中admin可以是其他,比如要开发一个项目叫活动报名且起名为 active_bm,那么在app/active_bm/app.php 中写函数,将会被自动包含。

默认应用

app/admin 后台管理
app/payment支付管理
app/applet小程序相关
app/form表单配置
以上为内置应用

默认的应用可以加速开发,除了以上应用,如其他第三方接口均存放在RPC服务中,RPC为独立的应用。项目为 app/webtool 。当发放一个完整软件时,如开发一个电商软件,命名为mall时,那么完整的项目目录可能是这样的,在app目录下有 admin 、payment、applet、mall 等

当开发一个共享打印时,由于共享打印需要调用第三方打印接口及生成一寸二寸照片时,此时项目中的app目录下有 admin、payment、applet、printer、webtool ,其中printer为共享打印实现的目录,包含API接口、后台界面、后台功能,webtool为RPC服务,在printer中调用RPC看起来代码为下:

namespace app\printer\controller;
use app\ApiController; 
use hg\apidoc\annotation as Apidoc; 
/**
* @Apidoc\Title("Api 证件照(智能)")
*/ 
class ApiAiPhoto extends ApiController
{ 
    public $guest = false;
    public $client;
    protected function init(){
        parent::init();
        $url = get_config("RPC_WEBTOOL_URL").'/rpc/webtool/Photo';    
        $this->client = rpc($url);  
    }
    /**
    * @Apidoc\Title("正装选择") 
    * @Apidoc\Query("spec_id",type="string",require=false,desc="")       
    * @Apidoc\Method("POST")        
    */
    public function get_ai_clothes(){    
        $spec_id = $this->input['spec_id'];
        $d = $this->client->get_ai_clothes(); 
        $color = get_photo_ai_to_color($spec_id);
        return json_success(['color'=>$color,'clothes'=>$d]);
    }
}

代码仅为演示效果。

更多开发功能请在菜单中查看。

开发中核心代码不要进行修改

以下是部分核心代码,列出的目录或文件不要随意修改,核心代码已统一管理,统一覆盖。

/app/applet
/app/form
/app/blog
/app/admin
/app/app.php
/app/AdminController.php
/app/AdminWithController.php
/app/ApiController.php
/app/BaseController.php
/app/AppService.php
/app/CRUD.php
/app/common.php
/app/StoreController.php
/app/middleware.php
/app/ExceptionHandle.php
/app/event.php
/app/Request.php
/public/lib/app.css
/public/lib/admin.css
/public/lib/admin.js
/public/lib/app.js

其他目录在不同的项目中,仅保持在当前项目可用,就算名称相同,也不可以覆盖,以免造成系统异常。