我們在我們的web應用程序中使用Play Framework 2.1。我們希望在我們的應用程序數據庫的PostgreSQL數據庫中顯式設置數據庫模式(不是public
模式)。我該如何設置它?如何在Play中設置默認的PostgreSQL模式?
2
A
回答
3
據我所知,從我以前的嘗試。您應該爲每個您想要的模型定義您的schema
名稱。它應該是這樣的:
import play.db.ebean.Model;
import javax.persistence.Entity;
import javax.persistence.Table;
@Entity
@Table(schema = "schema2")
public class TableOnSchema2 extends Model {
...
}
也許這個解決方案會額外的努力來定義每個模型的模式名稱。因爲,我不知道是否可以設置配置值來指定應用程序的默認數據庫方案。但它適用於我!
希望這會幫助你.. :)
2
如果你的表都位於公共方案之外,做的最好的事情,就是改變SEARCH_PATH您的應用程序用戶:
alter user your_appuser set search_path = 'schema1';
如果你有多個模式,您可以添加所有的人:
alter user your_appuser set search_path = 'schema1,schema2,public';
不要忘記commit
本聲明。更改只會在用戶下次登錄後產生影響。現有的連接不會受到影響。
相關問題
- 1. 在postgresql中設置默認模式(spring)
- 2. Spring Boot - 如何設置PostgreSQL的默認模式?
- 3. 如何爲laravel設置默認postgresql模式?
- 4. 使用PostgreSQL在Yii Framework中設置一個非默認模式
- 5. 如何在使用PostgreSQL的Scala Play項目中使'公共'模式默認?
- 6. 在CtrlP中,如何將`mru`模式設置爲默認模式?
- 7. 設置默認模式名在Java中
- 8. 如何在Spacemacs中設置文件的默認模式?
- 9. 如何在Yii2中設置默認模式
- 10. 如何在android中設置默認模式耳機
- 11. PostgreSQL的COALESCE不設置默認值
- 12. 使用Play設置默認值! Json Combinators
- 13. 如何設置PostgreSQL for Play 2.0?
- 14. Joomla:如何設置默認模板?
- 15. Spine.js,設置模式默認值
- 16. MySQL PDO - 設置默認提取模式?
- 17. 問題設置默認模式
- 18. 爲SQL查詢設置默認模式
- 19. 如何在PostgreSQL上爲DBLINK設置默認連接參數
- 20. 如何在iPhone模擬器中設置默認設備?
- 21. 如何設置Datetimepicker的默認設置?
- 22. 默認情況下MINGW64 curl設置默認模式
- 23. 如何在DropDownListFor中設置默認值
- 24. 如何在NopDropDownList中設置默認值...?
- 25. 如何在jsp中設置默認值?
- 26. 如何在text_field中設置默認值?
- 27. 如何在forge.prefs中設置默認值?
- 28. 如何在Jplayer中設置默認值
- 29. PostgreSQL的設置默認的日期格式
- 30. 如何設置像'YYYYMM'這樣的Postgresql默認值datestamp?
你在說使用進化腳本還是什麼?否則,只需使用psql在數據庫中使用所需的任何模式。還是我完全誤解了? – maba 2013-04-10 13:22:37
當我嘗試從數據庫訪問表時,出現PersistenceException。因爲系統不能找到表。它假定我使用公共模式,因此我應該告訴框架使用其他名稱模式。 – 2013-04-10 13:35:18