Update to remove null byte before saving to DB and remove null byte on changes
This commit is contained in:
@@ -20,6 +20,13 @@ if (config.dburl)
|
||||
else
|
||||
sequelize = new Sequelize(dbconfig.database, dbconfig.username, dbconfig.password, dbconfig);
|
||||
|
||||
// [Postgres] Handling NULL bytes
|
||||
// https://github.com/sequelize/sequelize/issues/6485
|
||||
function stripNullByte(value) {
|
||||
return value ? value.replace(/\u0000/g, "") : value;
|
||||
}
|
||||
sequelize.stripNullByte = stripNullByte;
|
||||
|
||||
var db = {};
|
||||
|
||||
fs
|
||||
|
||||
@@ -52,13 +52,22 @@ module.exports = function (sequelize, DataTypes) {
|
||||
defaultValue: 0
|
||||
},
|
||||
title: {
|
||||
type: DataTypes.TEXT
|
||||
type: DataTypes.TEXT,
|
||||
set: function (value) {
|
||||
this.setDataValue('title', sequelize.stripNullByte(value));
|
||||
}
|
||||
},
|
||||
content: {
|
||||
type: DataTypes.TEXT
|
||||
type: DataTypes.TEXT,
|
||||
set: function (value) {
|
||||
this.setDataValue('content', sequelize.stripNullByte(value));
|
||||
}
|
||||
},
|
||||
authorship: {
|
||||
type: DataTypes.TEXT
|
||||
type: DataTypes.TEXT,
|
||||
set: function (value) {
|
||||
this.setDataValue('authorship', JSON.stringify(value));
|
||||
}
|
||||
},
|
||||
lastchangeAt: {
|
||||
type: DataTypes.DATE
|
||||
|
||||
@@ -59,19 +59,31 @@ module.exports = function (sequelize, DataTypes) {
|
||||
defaultValue: Sequelize.UUIDV4
|
||||
},
|
||||
patch: {
|
||||
type: DataTypes.TEXT
|
||||
type: DataTypes.TEXT,
|
||||
set: function (value) {
|
||||
this.setDataValue('patch', sequelize.stripNullByte(value));
|
||||
}
|
||||
},
|
||||
lastContent: {
|
||||
type: DataTypes.TEXT
|
||||
type: DataTypes.TEXT,
|
||||
set: function (value) {
|
||||
this.setDataValue('lastContent', sequelize.stripNullByte(value));
|
||||
}
|
||||
},
|
||||
content: {
|
||||
type: DataTypes.TEXT
|
||||
type: DataTypes.TEXT,
|
||||
set: function (value) {
|
||||
this.setDataValue('content', sequelize.stripNullByte(value));
|
||||
}
|
||||
},
|
||||
length: {
|
||||
type: DataTypes.INTEGER
|
||||
},
|
||||
authorship: {
|
||||
type: DataTypes.TEXT
|
||||
type: DataTypes.TEXT,
|
||||
set: function (value) {
|
||||
this.setDataValue('authorship', value ? JSON.stringify(value) : value);
|
||||
}
|
||||
}
|
||||
}, {
|
||||
classMethods: {
|
||||
|
||||
Reference in New Issue
Block a user