2017-07-07 4 views
1

私は新しいセイルズプロジェクトを作成し、セールス許可をインストールしました。最初はうまくいった。 MySQLへの接続を作成した後と帆は、モデルpassport.jsはnode_modules/sails-permission/api/modelsに位置しセイルズプロジェクト - mysql接続 'エラー:一貫性違反'

error: Error: Consistency violation: A model (`passport`) references a 

datastore which cannot be found ('mysql'). If this model definitionhas an explicitconnectionproperty, check that it is spelledcorrectly. If not, check your defaultconnection(usually located in config/models.js).

として、それはエラーをスロー持ち上げました。

のconfig/connections.js

mysql: { 
    module : 'sails-mysql', 
    host  : '127.0.0.1', 
    port  : 3306, 
    user  : 'review', 
    password : 'review', 
    database : 'reviews' 
    }, 

のconfig/models.js

module.exports.models = { 
    connection: 'mysql', 
    migrate: 'alter' 
}; 

node_modules /帆許可/ API /モデルのbeacause

var bcrypt = require('bcryptjs'); 

function hashPassword (passport, next) { 
    var config = sails.config.auth.bcrypt; 
    var salt = config.salt || config.rounds; 
    if (passport.password) { 
    bcrypt.hash(passport.password, salt, function (err, hash) { 
     if (err) { 
     delete passport.password; 
     sails.log.error(err); 
     throw err; 
     } 
     passport.password = hash; 
     next(null, passport); 
    }); 
    } 
    else { 
    next(null, passport); 
    } 
} 

    var Passport = { 
    attributes: { 

    password: { type: 'string', minLength: 8 }, 
    provider : { type: 'alphanumericdashed' }, 
    identifier : { type: 'string' }, 
    tokens  : { type: 'json' }, 
    user: { model: 'User', required: true }, 

    validatePassword: function (password, next) { 
     bcrypt.compare(password, this.password, next); 
    } 

    }, 
    beforeCreate: function (passport, next) { 
    hashPassword(passport, next); 
    }, 
    beforeUpdate: function (passport, next) { 
    hashPassword(passport, next); 
    } 
}; 

module.exports = Passport; 

答えて

1

それ帆-mysqlの更新。 [https://github.com/balderdashy/sails-mysql/pull/328/files]。これは、帆、モンゴの正確な同じ問題を解決

config/connection.js 

mysql: { 
    adapter : 'sails-mysql', 
    host  : '127.0.0.1', 
    port  : 3306, 
    user  : 'review', 
    password : 'review', 
    database : 'reviews' 
    }, 
+0

adapterとして

変更module dpineda