2015-09-07 107 views
1

我們通過創建一個主應用程序和多個插件來模塊化我們的應用程序。 Grails插件可以帶來他們自己的域類。但是,當使用數據庫遷移插件時,我無法找到執行由插件交付的遷移的方式。如何使用Grails和數據庫遷移插件執行插件遷移?

例如:我有一個報告插件和一個報告域類。遷移文件應包含的架構(創建表):

報告插件:

+ -- grails-app/domain/com/acme/Report.groovy | + -- /migrations/changelog.groovy | + /version-1.0.groovy

如何配置數據庫遷移插件在報告中,插件執行更改日誌?

我使用的Grails 2.3.11和數據庫遷移插件1.4.1

感謝您的幫助,

最好的問候, 丹尼爾

回答

0

你只需要在你的主數據庫遷移插件應用程序,並且它會自動跟蹤應用程序中所有就地插件的域更改。我們不需要單獨在每個應用程序的插件上安裝db遷移插件。

請確保所有包含域的插件都適用於主應用程序,即具有db遷移插件的插件。

您可以通過簡單地將此代碼添加到您的主應用程序的BuildConfig.groovy使就地插件:

grails.plugin.location."${pluginName}" = "${pathToYourPlugin}" 

您也可以參考上Effective Grails plugin development with in-place plugins這個博客。

+0

謝謝,但這不起作用有兩個原因:第一,遷移插件沒有在我的(就地)插件中查找任何變更集。第二:當我創建一個WAR文件並將這個文件傳遞給客戶時,爲什麼它應該是否是一個就地插件(除此之外):創建WAR文件時,創建的插件不再是原地插件在詹金斯)。 – Phillip