zoukankan      html  css  js  c++  java
  • Go语言根据数据表自动生成model以及controller代码

    这里仅说明自动生成model文件的过程

    • bee generate appcode -tables="bg_api_log" -conn="root:root@tcp(127.0.0.1:3306)/beego_api" -level=3
    该命令基于 127.0.0.1 服务器上的beego_api数据库中的bg_api_log表自动生成model、controller文件,以及覆盖路由。
    如果之前有同名的model或者controller文件,会在执行的过程总询问你是否覆盖,
    最后会询问是否覆盖路由,建议选择NO, 然后手动添加路由,否则会将以前的路由清空,只保留最新生成的路由。
    
    在这里,我只想要model文件,于是可以设置参数 -level=1, // 1 = models; 2 = models,controllers; 3 = models,controllers,router
    
    • 以下是关于 generate命令的其他用法
    generate 命令
    这个命令是用来自动化的生成代码的,包含了从数据库一键生成 model,还包含了 scaffold 的,通过这个命令,让大家开发代码不再慢
    
        bee generate scaffold [scaffoldname] [-fields=""] [-driver=mysql] [-conn="root:@tcp(127.0.0.1:3306)/test"]   
        // 此处是一个批处理命令,生成model,controller、view、doc以及生成数据迁移文件,并进行数据迁移
        // The generate scaffold command will do a number of things for you.
        // -fields: a list of table fields. Format: field:type, ...
        // -driver: [mysql | postgres | sqlite], the default is mysql
        // -conn:   the connection string used by the driver, the default is root:@tcp(127.0.0.1:3306)/test
        
        例子: bee generate scaffold post -fields="title:string,body:text" -conn="root:root@tcp(127.0.0.1:3306)/beego_api"
        例子中的命令会 根据-fields="title:string,body:text" 来创建model,controller、view、以及生成数据迁移文件,并进行数据迁移(即在数据库中生成对应的数据表)。以上操作都会询问yes或者no
    
    bee generate model [modelname] [-fields=""]     // 根据fields列表来生成model文件
        // generate RESTful model based on fields
        // -fields: a list of table fields. Format: field:type, ...
    
    bee generate controller [controllerfile]       // 生成controller文件(根据对应的model文件)
        // generate RESTful controllers
    
    bee generate view [viewpath]                   // 生成view文件,
        // generate CRUD view in viewpath
    
    bee generate migration [migrationfile] [-fields=""]        // 生成数据迁移文件
        // generate migration file for making database schema update
        // -fields: a list of table fields. Format: field:type, ...
    
    bee generate docs                             // 生成文档
        // generate swagger doc file
    
    bee generate test [routerfile]                // 根据路由生成测试用例(没试过)
        // generate testcase
    
    bee generate appcode [-tables=""] [-driver=mysql] [-conn="root:@tcp(127.0.0.1:3306)/test"] [-level=3]    // 这里就是文章介绍的,根据数据表生成model文件等
        // generate appcode based on an existing database
        // -tables: a list of table names separated by ',', default is empty, indicating all tables
        // -driver: [mysql | postgres | sqlite], the default is mysql
        // -conn:   the connection string used by the driver.
        //         default for mysql:    root:@tcp(127.0.0.1:3306)/test
        //         default for postgres: postgres://postgres:postgres@127.0.0.1:5432/postgres
        // -level:  [1 | 2 | 3], 1 = models; 2 = models,controllers; 3 = models,controllers,router
    
    
  • 相关阅读:
    平衡——职场小说《监控》推荐
    《java程序员全攻略:从小工到专家》连载一:外行人眼中的IT人
    《java程序员全攻略:从小工到专家》连载二:IT行情分布
    各路技术牛人都推荐的书
    程序员2009精华本 有哪些值得期待
    揭秘孙小小《PPT演示之道》
    In the beginning, the world was void and without form…
    大学计算机课程复习操作系统
    大学计算机课程复习汇编语言
    (转)Winform 创建桌面快捷方式并开机启动
  • 原文地址:https://www.cnblogs.com/lz0925/p/11910025.html
Copyright © 2011-2022 走看看