Knex 迁移中特定类型文本数组的默认值不起作用

Default value in Knex migration for an specific type of text array not working

我正在使用 Knex (v0.19.5) 和 PostgreSQL (v10.1) 创建数据库迁移,但是当我尝试将默认值设置为 TEXT 数组列时,它给了我 malformed array literal错误。

table.specificType('test', 'TEXT[]').defaultTo(['foo', 'bar']);

这是错误信息

Array value must start with "{" or dimension information.

error: malformed array literal: "foo,bar"

也许我遗漏了一些东西,但我无法让它工作,而且我在他们的 official docs.

中找不到任何有用的东西

我终于通过简单地将数组设置为文字字符串解决了这个问题。

table.specificType('test', 'TEXT[]').defaultTo('{\'\'foo\'\',\'\'bar\'\'}');