fix: locale db field length

This commit is contained in:
Nick 2019-07-16 22:23:41 -04:00
parent ab55f33d99
commit 08fd10603f

View File

@ -1,3 +1,5 @@
/* global WIKI */
exports.up = knex => { exports.up = knex => {
const dbCompat = { const dbCompat = {
charset: (WIKI.config.db.type === `mysql` || WIKI.config.db.type === `mariadb`) charset: (WIKI.config.db.type === `mysql` || WIKI.config.db.type === `mariadb`)
@ -67,7 +69,7 @@ exports.up = knex => {
// LOCALES ----------------------------- // LOCALES -----------------------------
.createTable('locales', table => { .createTable('locales', table => {
if (dbCompat.charset) { table.charset('utf8mb4') } if (dbCompat.charset) { table.charset('utf8mb4') }
table.string('code', 2).notNullable().primary() table.string('code', 5).notNullable().primary()
table.json('strings') table.json('strings')
table.boolean('isRTL').notNullable().defaultTo(false) table.boolean('isRTL').notNullable().defaultTo(false)
table.string('name').notNullable() table.string('name').notNullable()
@ -241,26 +243,26 @@ exports.up = knex => {
.table('pageHistory', table => { .table('pageHistory', table => {
table.integer('pageId').unsigned().references('id').inTable('pages') table.integer('pageId').unsigned().references('id').inTable('pages')
table.string('editorKey').references('key').inTable('editors') table.string('editorKey').references('key').inTable('editors')
table.string('localeCode', 2).references('code').inTable('locales') table.string('localeCode', 5).references('code').inTable('locales')
table.integer('authorId').unsigned().references('id').inTable('users') table.integer('authorId').unsigned().references('id').inTable('users')
}) })
.table('pages', table => { .table('pages', table => {
table.string('editorKey').references('key').inTable('editors') table.string('editorKey').references('key').inTable('editors')
table.string('localeCode', 2).references('code').inTable('locales') table.string('localeCode', 5).references('code').inTable('locales')
table.integer('authorId').unsigned().references('id').inTable('users') table.integer('authorId').unsigned().references('id').inTable('users')
table.integer('creatorId').unsigned().references('id').inTable('users') table.integer('creatorId').unsigned().references('id').inTable('users')
}) })
.table('pageTree', table => { .table('pageTree', table => {
table.integer('parent').unsigned().references('id').inTable('pageTree') table.integer('parent').unsigned().references('id').inTable('pageTree')
table.integer('pageId').unsigned().references('id').inTable('pages') table.integer('pageId').unsigned().references('id').inTable('pages')
table.string('localeCode', 2).references('code').inTable('locales') table.string('localeCode', 5).references('code').inTable('locales')
}) })
.table('userKeys', table => { .table('userKeys', table => {
table.integer('userId').unsigned().references('id').inTable('users') table.integer('userId').unsigned().references('id').inTable('users')
}) })
.table('users', table => { .table('users', table => {
table.string('providerKey').references('key').inTable('authentication').notNullable().defaultTo('local') table.string('providerKey').references('key').inTable('authentication').notNullable().defaultTo('local')
table.string('localeCode', 2).references('code').inTable('locales').notNullable().defaultTo('en') table.string('localeCode', 5).references('code').inTable('locales').notNullable().defaultTo('en')
table.string('defaultEditor').references('key').inTable('editors').notNullable().defaultTo('markdown') table.string('defaultEditor').references('key').inTable('editors').notNullable().defaultTo('markdown')
table.unique(['providerKey', 'email']) table.unique(['providerKey', 'email'])