Giter Club home page Giter Club logo

admin-core-test's Introduction

本 demo 说明

本项目演示使用 vscode 插件 niuhe 接入项目 admin-core 例子。前端项目为 vue3-element-admin

1. 定义 niuhe 文件

niuhe/all.niuhe 文件下定义一个 api, 然后点击 </> 按钮 生成 go 项目代码

#app=admincoretest

class NoneReq(Message):
    pass

class NoneRsp(Message):
    pass


with services():
    GET('测试 api', '/api/system/test/', NoneReq, wraps(NoneRsp))

2. 修改配置文件

在配置 conf/admincoretest.yaml 文件中添加第8和第9行并修改第7行的数据库连接信息

3. 接入 AdminBoot

src/admincoretest/main.go 中接入 AdminBoot

 
 func main() {
	boot := BaseBoot{}
	if err := boot.LoadConfig(); err != nil {
		panic(err)
	}
	svr := niuhe.NewServer()
	boot.BeforeBoot(svr)
	boot.RegisterModules(svr)
	boot.Serve(svr)
}

上述 main 方式是自定生成的, 将 AdminBoot 引入, 初始化 config(LoadConfig) 并 RegisterModules 即可

// adminBoot "github.com/ma-guo/admin-core/boot" // import
 func main() {
	boot := BaseBoot{}
	if err := boot.LoadConfig(); err != nil {
		panic(err)
	}
	admin := adminBoot.AdminBoot{}
	if err := admin.LoadConfig(os.Args[1]); err != nil {
		niuhe.LogInfo("admin config error: %v", err)
		return
	}
	svr := niuhe.NewServer()
	boot.BeforeBoot(svr)
	admin.RegisterModules(svr)
	boot.RegisterModules(svr)
	boot.Serve(svr)
}

进过上面三步即可接入 admin-core 项目, 在 vscode 下可愉快地使用 niuhe 插件加速您的项目开发了。

4. 自定义方法支持验证

  1. 自定义方法需要加入 Bearea 认证的请参考 src/admincoretest/views/init.go 中的使用
  2. 需要修改 Bearea 认证盐请在配置文件中配置 secretkey

下面为插件自动生成的文档说明

mod

    go env -w GO111MODULE=auto
    cd src/admincoretest && go mod init admincoretest && go mod tidy && go mod vendor && cd ../../ && make run

db 配置格式

db:
	main:user:pwd@tcp(host:port)/database_name?charset=utf8mb4

更多自定义信息

niuhe 文件夹下新建文件 .config, 注:

  • .config 为本地定义文件, 不需要跟随 git 版本提交
  • 配置项不能添加注释, 下列说明中配置项后面的 // 注释为实例

支持生成 typescript

#langs=ts
#tstypes=full_types_file_path // 完整文件地址
#tsapi=full_api_file_path // 完整文件地址
#tsoptional // ts 中 optional 转换为 ?

完整示例

配置项 配置说明 示例
#langs 支持的语言, 目前支持 go,ts, 默认支持 go #langs=ts
#tstypes 自定义 types.d.ts 路径 #tstypes=~/twerp/typings/lib.props.d.ts
#tsapi 自定义 api.ts 路径 #tsapi=~/twerp/src/utils/api.ts
#tsoptional optional 修饰的字段添加 ?, 默认不添加 #tsoptional

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.