ich versuche caminteJs
auf NodeJS zu verwenden und umzusetzen, habe ich models
Ordner und dass ich einige Datenbankschema haben, die alsNodeJS Variablen auf getrennten Dateien mit
user.js //contains user table schema
news.js //contains news table schema
in index.js
, die ihre in models
Ordner ich habe:
var users = require('./user');
var news = require('./news');
module.exports = {
users:users,
news:news
};
user.js
Dateiinhalt:
var schema = require('../config');
module.exports = function(schema){
var users = schema.define('channels', {
user_name: { type: schema.String, limit: 30 },
...
created_at: { type: schema.Date },
updated_at: { type: schema.Date }
});
return users;
};
config.js
Dateiinhalt:
var caminte = require('caminte'),
Schema = caminte.Schema,
config = {
driver: "mysql",
host: "localhost",
port: "3306",
username: "root",
password: "",
database: "test",
pool: true
},
schema = new Schema(config.driver, config);
module.exports = {
caminte: caminte,
Schema: Schema,
config: config,
schema: schema
}
und dann meine server.js
sie zu benutzen:
var socket = require('socket.io'),
...
config = require('./config'),
models = require('./models');
server.listen(port, function() {
console.log('Server listening at port %d', port);
});
io.on('connection', function (socket) {
socket.on("new_channel", function (data, device) {
new models.channels({ channel_name: 'Peter' });
console.log(channel);
});
});
ich diesen Fehler auf user.js
:
TypeError: schema.define is not a function
Dank, Problem gelöst –