Инструмент для генерации исходного кода проекта.
Генерирует исходный код двух отдельных проектов — одного [серверного] проекта и одного [веб-] проекта.
Исходный код ≠ Проект запущен!!! Проекты, сгенерированные этим инструментом, можно запустить, можно запустить, можно запустить
.
Быстрая генерация
Нет необходимости писать ни одной строки кода
Сгенерированные два исходных кода проекта могут быть независимо развернуты после компиляции
Возможность создания только серверного проекта
Возможность создания только веб-проекта
Одноклик запуск для проверки работы ( Проверка работы )
Только один базовый данных, чтобы просмотреть работу этого программного обеспечения, проверьте шаги выполнения> ### Только один базовый данных, чтобы создать исходный код проекта, проверьте шаги выполнения
Без базовых данных, ничего нет, просто каприз, проверьте работу
Эксперт, специалисты, продолжайте читать дальше~
Установите Go (для компиляции сгенерированного исходного кода серверного проекта)
$ go version
go version go1.9.2 darwin/amd64
Установите npm (для компиляции сгенерированного исходного кода веб-проекта)
$ npm -version
6.7.0
Установите MySQL базу данных (или имеющуюся локальную доступную MySQL базу данных)
Для установки проекта предлагается два способа, практикующим рекомендовано выбрать прямую загрузку, а теоретикам — установку из исходного кода
# установка
go install gitee.com/godY/daminghu-cli
Создайте новую папку или каталог (название произвольное):
$ mkdir dmhtest
$ cd dmhtest
```2. В созданной ранее директории создайте файл `cfg.json`:
```bash
$ touch cfg.json
$ ls
cfg.json
daminghu-cli-mac
Отредактируйте файл cfg.json
:
{
"PrefixProjectUri": "gitee.com/godY",
"ProjectName": "xxxx",
"Port": "19527",
"DistPath": "./dist/",
"DBSchema": "mysql",
"DBUsername": "root",
"DBPassword": "root",
"DBPort": "3306",
"DBIp": "localhost",
"DBConnParam": "?charset=utf8&parseTime=true&loc=Local&timeout=10s"
}
Название | Значение |
---|---|
PrefixProjectUri | Префикс URI проекта |
ProjectName | Название проекта |
Port | Порт сервера |
DistPath | Директория сгенерированного проекта |
DBSchema | Схема базы данных |
DBUsername | Логин пользователя базы данных |
DBPassword | Пароль пользователя базы данных |
DBPort | Порт базы данных |
DBIp | Адрес IP базы данных |
DBConnParam | Параметры соединения с базой данных |
В зависимости от способа установки, есть два варианта:
Установка через скачивание
daminghu-cli-win.exe
./daminghu-cli-mac
./daminghu-cli-linux
Если GOPATH/bin
находится в системной переменной PATH
, вы можете запустить команду daminghu-cli
непосредственно из директории dmhtest.
Если GOPATH/bin
не находится в системной переменной PATH
, найдите файл daminghu-cli
в папке GOPATH/bin
и переместите его в директорию dmhtest, затем следуйте указаниям выше для установки.
$ daminghu-cli 2019/03/14 14:36:39 [D] MySqlConnStr root:root@tcp(localhost:3306)/mysql?charset=utf8&parseTime=true&loc=Local&timeout=10s 2019/03/14 14:36:39 [I] Начало выполнения Before Handler.............. 2019/03/14 14:36:39 [I] Выполнение Before Handler завершено! 2019/03/14 14:36:39 [I] Начало сборки проекта svr.............. 2019/03/14 14:36:39 [D] CreateDirHandler 2019/03/14 14:36:39 [D] DownloadTemplateHandler 2019/03/14 14:36:40 [D] CreateBaseProjectHandler 2019/03/14 14:36:40 [D] CreateRouterHandler 2019/03/14 14:36:40 [D] CreateStructHandler 2019/03/14 14:36:40 [D] CreateControllerHandler 2019/03/14 14:36:40 [D] CreateSqlHandler 2019/03/14 14:36:40 [D] CreateModelHandler 2019/03/14 14:36:40 [I] Сборка проекта svr завершена! 2019/03/14 14:36:40 [I] Начало сборки проекта web.............. 2019/03/14 14:36:40 [D] CreateDirHandler 2019/03/14 14:36:40 [D] DownloadHandler 2019/03/14 14:36:41 [D] DownloadTemplateHandler 2019/03/14 14:36:41 [D] CreateApiHandler 2019/03/14 14:36:41 [D] CreateEnvHandler 2019/03/14 14:36:41 [D] CreateRouterHandler 2019/03/14 14:36:41 [D] CreateMainHandler 2019/03/14 14:36:41 [D] CreateHomeHandler 2019/03/14 14:36:41 [D] CreatePageHandler 2019/03/14 14:36:41 [I] Сборка проекта web завершена! 2019/03/14 14:36:41 [I] Начало выполнения After Handler.............. 2019/03/14 14:36:41 [D] DeleteTempHandler 2019/03/14 14:36:41 [I] Выполнение After Handler завершено!
## Сгенерированная проектная директория```bash
$ tree -L 2
.
├── cfg.json
└── dist
├── xxxx-svr # серверный проект
└── xxxx-web # веб-проект
3 папки, 1 файл
скопировать проект в соответствующую директорию GOPATH
Пример:
src
/gitee.com/godY/xxxx-svr
~/src/gitee.com/godY/xxxx-svr/cmd $ go run main.go
2019/03/14 15:01:19 [D] [db.go:16] db init
[xorm] [info] 2019/03/14 15:01:19.256224 PING DATABASE mysql
2019/03/14 15:01:19 [I] [asm_amd64.s:2337] http rpcserver Running on http://:19527
Перейти в директорию dist/xxxx-web, выполнить следующие команды
~/dist/xxxx-web $ npm install && npm run dev
DONE Compiled successfully in 20585ms 14:59 PM
I Your application is running here: http://localhost:19527
Автоматически откроется браузер, начните работу.
$ tree . ├── api │ ├── api_columns_priv.go │ ├── api_db.go │ ├── api_event.go │ ├── api_func.go │ ├── api_help_category.go │ ├── api_help_keyword.go │ ├── api_help_relation.go │ ├── api_help_topic.go │ ├── api_innodb_index_stats.go │ ├── api_innodb_table_stats.go │ ├── api_ndb_binlog_index.go │ ├── api_plugin.go │ ├── api_proc.go │ ├── api_procs_priv.go │ ├── api_proxies_priv.go │ ├── api_servers.go │ ├── api_slave_master_info.go │ ├── api_slave_relay_log_info.go │ ├── api_slave_worker_info.go │ ├── api_tables_priv.go │ ├── api_time_zone.go │ ├── api_time_zone_leap_second.go │ ├── api_time_zone_name.go │ ├── api_time_zone_transition.go │ ├── api_time_zone_transition_type.go │ ├── api_user.go │ ├── base.go │ └── login.go ├── cmd │ ├── conf │ │ ├── app.conf │ │ ├── db.conf │ │ └── upload.conf │ ├── logs │ ├── main.go │ └── sql │ └── mysql │ ├── columns_priv.base.xsql │ ├── columns_priv.count.stpl │ ├── columns_priv.read.stpl │ ├── db.base.xsql │ ├── db.count.stpl │ ├── db.read.stpl │ ├── event.base.xsql │ ├── event.count.stpl │ ├── event.read.stpl │ ├── func.base.xsql │ ├── func.count.stpl │ ├── func.read.stpl │ ├── help_category.base.xsql │ ├── help_category.count.stpl │ ├── help_category.read.stpl │ ├── help_keyword.base.xsql │ ├── help_keyword.count.stpl │ ├── help_keyword.read.stpl │ ├── help_relation.base.xsql │ ├── help_relation.count.stpl │ ├── help_relation.read.stpl │ ├── help_topic.base.xsql │ ├── help_topic.count.stpl
│ ├── innodb_index_stats.base.xsql
│ ├── innodb_index_stats.count.stpl
│ ├── innodb_index_stats.read.stpl
│ ├── innodb_table_stats.base.xsql
│ ├── innodb_table_stats.count.stpl
│ ├── innodb_table_stats.read.stpl
│ ├── ndb_binlog_index.base.xsql
│ ├── ndb_binlog_index.count.stpl
│ ├── ndb_binlog_index.read.stpl
│ ├── plugin.base.xsql
│ ├── plugin.count.stpl
│ ├── plugin.read.stpl
│ ├── proc.base.xsql
│ ├── proc.count.stpl
│ ├── proc.read.stpl
│ ├── procs_priv.base.xsql
│ ├── procs_priv.count.stpl
│ ├── procs_priv.read.stpl
│ ├── proxies_priv.base.xsql
│ ├── proxies_priv.count.stpl
│ ├── proxies_priv.read.stpl
│ ├── servers.base.xsql
│ ├── servers.count.stpl
│ ├── servers.read.stpl
│ ├── slave_master_info.base.xsql
│ ├── slave_master_info.count.stpl
│ ├── slave_master_info.read.stpl
│ ├── slave_relay_log_info.base.xsql
│ ├── slave_relay_log_info.count.stpl
│ ├── slave_relay_log_info.read.stpl
│ ├── slave_worker_info.base.xsql
│ ├── slave_worker_info.count.stpl
│ ├── slave_worker_info.read.stpl
│ ├── tables_priv.base.xsql
│ ├── tables_priv.count.stpl
│ ├── tables_priv.read.stpl
│ ├── time_zone.base.xsql
│ ├── time_zone.count.stpl
│ ├── time_zone.read.stpl
│ ├── time_zone_leap_second.base.xsql
│ ├── time_zone_leap_second.count.stpl
│ ├── time_zone_leap_second.read.stpl
│ ├── time_zone_name.base.xsql │ ├── time_zone_name. count. stpl│ ├── time_zone_name. прочитать. stpl
│ ├── time_zone_transition. базовый. xsql
│ ├── time_zone_transition. количество. stpl
│ ├── time_zone_transition. прочитать. stpl
│ ├── time_zone_transition_type. базовый. xsql
│ ├── time_zone_transition_type. количество. stpl
│ ├── time_zone_transition_type. прочитать. stpl
│ ├── пользователь. базовый. xsql
│ ├── пользователь. количество. stpl
│ └── пользователь. прочитать. stpl
├── общие
│ └── общие. go
├── db
│ ├── db. go
│ ├── db_columns_priv. go
│ ├── db_db. go
│ ├── db_event. go
│ ├── db_func. go
│ ├── db_help_category. go
│ ├── db_help_keyword. go
│ ├── db_help_relation. go
│ ├── db_help_topic. go
│ ├── db_innodb_index_stats. go
│ ├── db_innodb_table_stats. go
│ ├── db_ndb_binlog_index. go
│ ├── db_plugin. go
│ ├── db_proc. go
│ ├── db_procs_priv. go
│ ├── db_proxies_priv. go
│ ├── db_servers. go
│ ├── db_slave_master_info. go
│ ├── db_slave_relay_log_info. go
│ ├── db_slave_worker_info. go
│ ├── db_tables_priv. go
│ ├── db_time_zone. go
│ ├── db_time_zone_leap_second. go
│ ├── db_time_zone_name. go
│ ├── db_time_zone_transition. go
│ ├── db_time_zone_transition_type. go
│ └── db_user. go
├── фильтрация
│ └── фильтр. go
├── модель
│ ├── базовый. go
│ ├── модель_columns_priv. go
│ ├── модель_db. go
│ ├── модель_event. go
│ ├── модель_func. go
│ ├── модель_help_category. go
│ ├── модель_help_keyword. go
│ ├── модель_help_relation. go
│
12 директорий, 168 файлов
```markdown
## Каталог web
``````bash
$ tree
.
├── README.md
├── build
│ ├── build.js
│ ├── check-versions.js
│ ├── logo.png
│ ├── utils.js
│ ├── vue-loader.conf.js
│ ├── webpack.base.conf.js
│ ├── webpack.dev.conf.js
│ └── webpack.prod.conf.js
├── config
│ ├── dev.env.js
│ ├── index.js
│ ├── prod.env.js
│ └── test.env.js
├── index.html
├── package.json
├── src
│ ├── App.vue
│ ├── api
│ │ ├── api.js
│ │ ├── http.js
│ │ └── util.js
│ ├── assets
│ │ └── logo.png
│ ├── components
│ │ └── headTop.vue
│ ├── config
│ │ └── env.js
│ ├── main.js
│ ├── mixin
│ ├── pages
│ │ ├── columns_priv.vue
│ │ ├── db.vue
│ │ ├── event.vue
│ │ ├── func.vue
│ │ ├── help_category.vue
│ │ ├── help_keyword.vue
│ │ ├── help_relation.vue
│ │ ├── help_topic.vue
│ │ ├── home.vue
│ │ ├── innodb_index_stats.vue
│ │ ├── innodb_table_stats.vue
│ │ ├── login.vue
│ │ ├── main.vue
│ │ ├── ndb_binlog_index.vue
│ │ ├── plugin.vue
│ │ ├── proc.vue
│ │ ├── procs_priv.vue
│ │ ├── proxies_priv.vue
│ │ ├── servers.vue
│ │ ├── slave_master_info.vue
│ │ ├── slave_relay_log_info.vue
│ │ ├── slave_worker_info.vue
│ │ ├── tables_priv.vue
│ │ ├── time_zone.vue
│ │ ├── time_zone_leap_second.vue
│ │ ├── time_zone_name.vue
│ │ ├── time_zone_transition.vue
│ │ ├── time_zone_transition_type.vue
│ │ └── user.vue
│ ├── router
│ │ └── index.js
│ └── style
│ ├── common.less
│ └── mixin.less
├── static
│ └── img
└── тест
├── e2e
│ ├── custom-assertions
│ │ └── elementCount.js
│ ├── nightwatch.conf.js
│ ├── runner.js
`````` │ └── specs
│ └── test.js
└── unit
├── jest.conf.js
├── setup.js
└── specs
└── HelloWorld.spec.js
```19 директорий, 62 файла
```## Параметры команд
- Создание двух проектов -> daminghu-cli -build all
- Создание серверного проекта -> daminghu-cli -build svr
- Создание веб-проекта -> daminghu-cli -build web
- Указание расположения конфигурационного файла -> daminghu-cli -cfg ./cfg.json
- Создание скомпилированного проекта (готового к запуску), `необходимо подождать несколько минут, не закрывайте процесс` -> daminghu-cli -mode demo
- Создание скомпилированного проекта (готового к запуску) и отправка его на электронную почту -> daminghu-cli -mode demo -email yasenagat@163.com
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )