Guest User

Untitled

a guest
Aug 10th, 2018
115
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.09 KB | None | 0 0
  1. const path = require('path');
  2.  
  3. module.exports = {
  4. test: {
  5. username: 'root',
  6. password: 'root',
  7. database: path.join(__dirname, '..', 'database_test.sqlite'),
  8. host: 'localhost',
  9. dialect: 'sqlite',
  10. logging: console.log,
  11. operatorsAliases: false
  12. }
  13. };
  14.  
  15. 'use strict';
  16.  
  17. module.exports = {
  18. up: (queryInterface, Sequelize) => queryInterface.createTable('appeals', {
  19. appealId: {
  20. allowNull: false,
  21. primaryKey: true,
  22. type: Sequelize.UUID
  23. },
  24. name: {
  25. allowNull: false,
  26. type: Sequelize.STRING
  27. },
  28. description: {
  29. type: Sequelize.STRING(511)
  30. },
  31. createdAt: {
  32. allowNull: false,
  33. type: Sequelize.DATE
  34. },
  35. updatedAt: {
  36. allowNull: false,
  37. type: Sequelize.DATE
  38. }
  39. }),
  40. down: queryInterface => queryInterface.dropTable('appeals')
  41. };
  42.  
  43. const fs = require('fs');
  44. const path = require('path');
  45. const Sequelize = require('sequelize');
  46. const basename = path.basename(__filename);
  47. const env = process.env.NODE_ENV || 'development';
  48. const config = require(path.join(__dirname, '..', 'config', 'config.js'))[env];
  49. const db = {};
  50.  
  51. let sequelize = new Sequelize(config.database, config.username, config.password, config);
  52.  
  53. fs
  54. .readdirSync(__dirname)
  55. .filter(file => (file.indexOf('.') !== 0) && (file !== basename) && (file.slice(-3) === '.js'))
  56. .forEach(file => {
  57. const model = sequelize.import(path.join(__dirname, file));
  58. db[model.name] = model;
  59. });
  60.  
  61. Object.keys(db).forEach(modelName => {
  62. if (db[modelName].associate) {
  63. db[modelName].associate(db);
  64. }
  65. });
  66.  
  67. db.sequelize = sequelize;
  68. db.Sequelize = Sequelize;
  69.  
  70. module.exports = db;
  71.  
  72. 'use strict';
  73.  
  74. module.exports = (sequelize, DataTypes) => {
  75. const Appeal = sequelize.define('appeals', {
  76. appealId: {
  77. allowNull: false,
  78. defaultValue: DataTypes.UUIDV4,
  79. primaryKey: true,
  80. type: DataTypes.UUID,
  81. validate: {
  82. isUUID: 4
  83. },
  84. get() {
  85. return this.getDataValue('appealId').toLowerCase();
  86. }
  87. },
  88. name: {
  89. type: DataTypes.STRING,
  90. allowNull: false
  91. },
  92. description: {
  93. type: DataTypes.STRING(511)
  94. }
  95. }, {
  96. tableName: 'appeals'
  97. });
  98. Appeal.associate = models => {
  99. // associations can be defined here
  100. };
  101. return Appeal;
  102. };
  103.  
  104. const path = require('path');
  105.  
  106. module.exports = {
  107. development: {
  108. username: 'root',
  109. password: 'root',
  110. database: path.join(__dirname, '..', 'database_test.sqlite'),
  111. host: 'localhost',
  112. dialect: 'sqlite',
  113. logging: true,
  114. operatorsAliases: false
  115. }
  116. };
  117.  
  118. const path = require('path');
  119.  
  120. module.exports = {
  121. 'models-path': path.resolve('./models'),
  122. 'seeders-path': path.resolve('./seeders'),
  123. 'migrations-path': path.resolve('./migrations'),
  124. 'config': path.resolve('./config', 'config.js')
  125. };
Add Comment
Please, Sign In to add comment