sql >> Database teknologi >  >> RDS >> Mysql

Opret automatisk mysql-tabel med StrongLoop

Jeg oprettede /server/boot/autoupdate.js . Den kører, når appen starter. Den indlæser "model-config" og "datasources" JSON og migrerer eller opdaterer alle modeller til de datakilder, der er defineret for dem.

# /server/boot/autoupdate.js
module.exports = function(app) {
    var path = require('path');
    var models = require(path.resolve(__dirname, '../model-config.json'));
    var datasources = require(path.resolve(__dirname, '../datasources.json'));

    function autoUpdateAll(){
        Object.keys(models).forEach(function(key) {
            if (typeof models[key].dataSource != 'undefined') {
                if (typeof datasources[models[key].dataSource] != 'undefined') {
                    app.dataSources[models[key].dataSource].autoupdate(key, function (err) {
                        if (err) throw err;
                        console.log('Model ' + key + ' updated');
                    });
                }
            }
        });
    }

    function autoMigrateAll(){
        Object.keys(models).forEach(function(key) {
            if (typeof models[key].dataSource != 'undefined') {
                if (typeof datasources[models[key].dataSource] != 'undefined') {
                    app.dataSources[models[key].dataSource].automigrate(key, function (err) {
                        if (err) throw err;
                        console.log('Model ' + key + ' migrated');
                    });
                }
            }
        });
    }
    //TODO: change to autoUpdateAll when ready for CI deployment to production
    autoMigrateAll();
    //autoUpdateAll();

};


  1. Mysql-syntaksen virker korrekt

  2. PHP/MYSQL AJAX Chat

  3. laravel errno 150 udenlandsk nøgle begrænsning er forkert dannet

  4. MySQL:Få et rækkenummer (rangering) for en specifik række