은 내가 Node.js를하고 ORM의 새로운 해요, 그리고 난 DB를 querys에 대한 책장을 사용하고 있습니다. 그래서, 나는 책장의 문서를 확인하고 내가 MySQL의에서 기존 스키마에 쿼리를 작성려고 할 때 다음과 같은 오류가 발생합니다 :빌더 = bookshelf.knex (tableNameOrBuilder);
user
.query('where', 'usuario', '=', 'admin')
.fetch()
.then(function(user) {
console.log(user)
});
: 여기
TypeError: bookshelf.knex is not a function
at Child.builderFn [as _builder] (/home/mauricio/techday/techday- node/node_modules/bookshelf/lib/bookshelf.js:314:27)
at Object.query (/home/mauricio/techday/techday-node/node_modules/bookshelf/lib/helpers.js:44:23)
at Child.query (/home/mauricio/techday/techday-node/node_modules/bookshelf/lib/model.js:1243:30)
at Function.Model.(anonymous function).Collection.(anonymous function) [as query] (/home/mauricio/techday/techday-node/node_modules/bookshelf/lib/bookshelf.js:333:28)
at Object.<anonymous> (/home/mauricio/techday/techday-node/app.js:20:2)
at Module._compile (module.js:571:32)
at Object.Module._extensions..js (module.js:580:10)
at Module.load (module.js:488:32)
at tryModuleLoad (module.js:447:12)
at Function.Module._load (module.js:439:3)
at Module.runMain (module.js:605:10)
at run (bootstrap_node.js:427:7)
at startup (bootstrap_node.js:151:9)
at bootstrap_node.js:542:3
내 쿼리입니다 여기 내 db.js입니다 : 지금
'use strict'
var db = require('bookshelf')(knex);
var securePassword = require ('bookshelf-secure-password');
db.plugin(securePassword);
db.plugin('registry');
var knex = require('knex')({
client: 'mysql',
connection: {
host: 'localhost',
user: 'root',
password: 'password',
database: 'test',
charset: 'utf8'
}
});
module.exports = db;
그리고 내의 user.js
var db = require('../Commons/db.js');
var bcrypt = require('bcrypt-nodejs');
var user = db.Model.extend({
tableName: 'usuario',
hasSecurePassword: 'contraseña'
});
module.exports = db.model('user',user);
어떻게'db'와'user' 정의? 두 가지를 모두 정의하는 코드를 추가하십시오. – flaviodesousa
나는 이미 user와 db 모두를 추가했다. –