2017-12-18 133 views
0

我想在PostgreSQL中的非公共模式下創建一個數據庫。 在knexjs文件:AdonisJS遷移PostgreSQL上的錯誤:withSchema不是函數

knex.schema.withSchema('public').createTable('users', function (table){ 
    table.increments(); 
}) 

我的遷移代碼:

this.withSchema('myschema').create('users', table => { 
    table.increments() 
}) 

但遷移:運行返回此錯誤:

​​

我怎樣才能在自定義模式創建數據庫?從knex文檔

+0

粘貼你在這裏完整的代碼。 –

+0

@FazalRasel:我的代碼很簡單,只在myschema,schema中添加一個id爲id的表。另外我在運行遷移之前創建了模式。 –

+0

和你簡單的代碼不起作用。要確定實際問題,完整的文件代碼是必要的。 –

回答

0

例實際上做的工作:

https://runkit.com/embed/zbhlv44ry8xf

好像在你遷移代碼thisknex實例。

+0

你說得對,但我該怎麼辦? –

+0

爲您的代碼提供足夠的上下文,以便可以找出爲什麼您的「this」不是您認爲它的實例。也許你正在試圖做子查詢和使用箭頭函數作爲回調,它不正確地綁定this。 –