在这个精美的博客上,它说在dbconsole中我应该能够看到左边的小图标,就像他看到“BOOK”一样。 http://www.redtoad.ca/ataylor/2011/11/h2-database-console-in-grails-2/
我正在使用STS和grails 2.0,我使用多个域类创建应用程序(我可以访问控制器并查看列表和内容),但dbconsole不显示任何域类。直接进入INFORMATION_SCHEMA
。
我的域名类在哪里?我可以看到列表并使用.findBy和stuff !!
答案 0 :(得分:19)
答案 1 :(得分:1)
谢谢你,Mikey!我有同样的问题!确实,请看看
grails-app/conf/DataSource.groovy
至少在我的情况下,JDBC URL可以设置为开发数据库的jdbc:h2:mem:devDb,测试数据库的jdbc:h2:mem:testDb
和生产数据库的jdbc:h2:mem:prodDb
。
控制台无法知道您喜欢哪一个,因此默认为测试。此外,如果您在浏览器中的dbconsole模式中单击“JDBC URL”,它会显示一些提示。特别是,它解释了“URL jdbc:h2:〜/ test表示数据库存储在用'test'开头的文件中的用户主目录中。”实际上,在我的主目录中,我现在有test.h2.db
,test.lock.db
和test.trace.db
。它还解释了为什么默认情况下数据不会保留。您是否注意到每次重新启动Grails时使用默认设置,您必须重新创建所有对象?好吧,这是因为JDBC URL中的“:mem:”部分。
此默认值可能与Grails无关;除非另有说明,否则我猜想H2会默认在您的主目录中创建一个测试数据库。我还想象在复杂的生产环境中你可能有许多不同的数据库,这就是为什么Grails不想猜测你想要什么。