不要怂,就是干,撸起袖子干!

Commit 485cf460 by Sascha Depold

allow charset definition + test on travis

1 parent b35685ce
......@@ -72,7 +72,7 @@ ModelDefinition.prototype.sync = function(options) {
var self = this
var doQuery = function() {
self.query(QueryGenerator.createTableQuery(self.tableName, self.attributes))
self.query(QueryGenerator.createTableQuery(self.tableName, self.attributes, options))
.on('success', function() { self.emit('success', self) })
.on('failure', function(err) { self.emit('failure', err) })
}
......
......@@ -8,7 +8,7 @@ var QueryGenerator = module.exports = {
createTableQuery: function(tableName, attributes, options) {
options = options || {}
var query = "CREATE TABLE IF NOT EXISTS <%= table %> (<%= attributes%>);"
var query = "CREATE TABLE IF NOT EXISTS <%= table %> (<%= attributes%>)"
, primaryKeys = []
, attrStr = Utils._.map(attributes, function(dataType, attr) {
var dt = dataType
......@@ -23,6 +23,9 @@ var QueryGenerator = module.exports = {
, pkString = primaryKeys.map(function(pk) {return Utils.addTicks(pk)}).join(", ")
if (pkString.length > 0) values.attributes += ", PRIMARY KEY (" + pkString + ")"
if(options.charset) query += " DEFAULT CHARSET=" + options.charset
query += ";"
return Utils._.template(query)(values)
},
......
......@@ -4,6 +4,6 @@ module.exports = {
database: 'sequelize_test',
host: '127.0.0.1',
rand: function() {
return parseInt(Math.random() * 99999)
return parseInt(Math.random() * 999)
}
}
......@@ -21,7 +21,7 @@ module.exports = {
name: Sequelize.STRING, bio: Sequelize.TEXT
})
User.sync({force: true}).on('success', function() {
User.sync({force: true, charset: 'latin1'}).on('success', function() {
User.create({foo: '1', bar: '2', name: 'hallo', bio: 'welt'}).on('success', function(u) {
assert.eql(u.equals(u), true)
exit(function(){})
......
......@@ -4,6 +4,6 @@ module.exports = {
database: 'sequelize_test',
host: '127.0.0.1',
rand: function() {
return parseInt(Math.random() * 9999999)
return parseInt(Math.random() * 999)
}
}
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!