Как создать модель из существующей базы данных в Sails JS?

Я начинаю с SailsJS и MySQL и у меня есть много таблиц в моей базе данных. Итак, я не знаю, что в SailsJS есть инструмент для генерации моделей из базы данных, например Database First в Entity Framework (ASP)

7 голосов | спросил Kai N. 2 WedEurope/Moscow2015-12-02T07:10:07+03:00Europe/Moscow12bEurope/MoscowWed, 02 Dec 2015 07:10:07 +0300 2015, 07:10:07

3 ответа


0

Вы должны использовать, очень хорошо автоматически генерировать существующую базу данных модели.
https://www.npmjs.com/package/sails-generate-models

ответил Quy Le 4 Jpm1000000pmWed, 04 Jan 2017 13:45:02 +030017 2017, 13:45:02
0

В SailsJS такой инструмент не реализован.

Однако создать его самостоятельно не составит труда, так как SHOW COLUMNS FROM table MySQL работает довольно хорошо. Тогда вам просто нужно создать файлы моделей .js.

Будьте осторожны с конфигурацией в config/models.js и установите migrate в safe . как вы можете удалить некоторые столбцы, если вы не тестировали и не уверены, правильно ли вы сгенерировали модели.

ответил Andrius 2 WedEurope/Moscow2015-12-02T11:57:24+03:00Europe/Moscow12bEurope/MoscowWed, 02 Dec 2015 11:57:24 +0300 2015, 11:57:24
0

Взгляните на модель инверсии парусов

Sails Inverse Model помогает создавать модели, контроллеры и просматривать JS Sails из любой базы данных. Кроме того, вы можете быстро и индивидуально генерировать каждую модель, вид, контроллер или все три одновременно.

Установить с помощью команды

  

npm установить паруса-модель -g

Чтобы узнать инструмент

  

обратная модель паруса --help

  Example:
$ mkdir sails-output
$ cd sails-output
$ sails-inverse-model -u postgres -p root -d almacen -t pg -m -v -c

User         : postgres
Password     : root
Database     : almacen
Host         : localhost
Models       : /home/julian/Documents/sails-output/models
Views        : /home/julian/Documents/sails-output/views
Controllers  : /home/julian/Documents/sails-output/controllers
DB           : pg
Schema (pg)  : public
=====================================
Views [OK]
=====================================
Models [OK]
=====================================
Controllers [OK]

  Note: Copy models      => your/project_sails/api
        Copy controllers => your/project_sails/api
        Copy views/*     => your/project_sails/views/

Then: 


$ cd your/project_sails/
$ sails lift


 More info: https://github.com/juliandavidmr/sails-inverse-model
 ---------------------------------------------------------------
Options:
 -u, --user        User of database
 -p, --pass        Password of database
 -d, --database    Database name
 -h, --host        Host server               Default: localhost
 -m, --models      Folder output models      Default: Folder actual
 -c, --controllers Folder output controllers Default: Folder actual
 -v, --views       Folder output views       Default: Folder actual 
 (Experimental)
 -t, --type        Type gestor database: mysql|postgres|mongodb  Default: mysql 

 -s, --schema      (Only PostgreSQL) Schema database postgres: Default: public
 -f, --file        (Only MySQL) .sql file path entry (Experimental)




====================== Individual generation ==================
  You can quickly generate a model, a controller, a view or these three at the same time.
  # Generate model 
  $ sails-inverse-model -g model --name Pet -a "name:string:r:u owner:string"

  # Generate Controller 
  $ sails-inverse-model -g controller --name Pet -a "name:string:r:u owner:string"

  # Generate View 
  $ sails-inverse-model -g view --name Pet -a "name:string:r owner:string"

  # Generate all (Model, View and Controller) 
  $ sails-inverse-model -g all --name Pet -a "name:string:r:k owner:string"

  Where:
  --------------------------------------------
  |Param | Description   |     Example       |
  |------|---------------|-------------------|
  |   r  | Required      | catname:string:r  |
  |   u  | Unique        | catname:string:u  |
  |   a  | Autoincrement | index:integer:a   |
  |   k  | Primary Key   | index:integer:k   |
  --------------------------------------------
  You can also set all three parameters at the same time, for example: index:integer:a:u:r
ответил Vishnoo Rath 25 Maypm18 2018, 13:53:05

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132