2015-04-28 50 views
3

我使用knex進行種子播種,我有一個名爲development的文件夾,其中包含所有的種子文件。如何指定一個文件作爲種子

我想要的是:如何播種單個文件。

我正在使用的命令是:knex種子:運行--env =開發 但是這個命令是播種所有的文件,我得到重複的數據庫上的數據庫。

假設我昨天已經創建了種子文件,併爲它們播種,今天我想添加另一個種子文件,我只想播種此文件,而不是來自昨天的文件。

從Laravel一個例子是:PHP工匠DB:種子--class = ProductTableSeeder

感謝

回答

3

只需將您的腳本到另一個文件夾,除了所需的腳本,運行種子和複製腳本回來。

seed API只有兩個命令make和run。這是來自文檔。

runknex.seed.run([配置])

奔跑當前環境中的所有種子的文件。

因此,所有的腳本,而每次運行

+0

如果我這樣做,比我應該爲每個特定文件夾做種子,如果我想在另一臺機器上執行種子文件? – Lulzim

+0

你也可以編寫一個批處理命令來重命名其他腳本,以便在種子執行時忽略它們作爲替代,但是如果將它們留在文件夾中,它們將被執行。他們也會按字母順序運行,所以你必須小心腳本的名字。 – devconcept

+0

我使用數字作爲前綴,例如:01,02所以我沒有訂購的問題,關於批次我不明白它如何你真的意思? – Lulzim

0

執行個人而言,我只是換我在exports.up承諾在if (boolean) {...} /向下轉換的那些假,我不希望運行。

相關問題