我正在研究this tuturial并达到5.2节。本教程指出,如果命令:
$ ./grailsw create-domain-class Vehicle
已使用,则应生成一个表,但是进入控制台后,http://localhost:8080/dbconsole/并登录没有该表的标志。
我尝试编辑application.yml
(根据我的有限了解和早期理解,在Grails 3中实现了我以前阅读的dataSource.groovy中的内容)。我的看起来像这样:
environments:
development:
dataSource:
dbCreate: update
url: jdbc:h2:mem:devDb;MVCC=TRUE;LOCK_TIMEOUT=10000;DB_CLOSE_ON_EXIT=FALSE
test:
dataSource:
dbCreate: update
url: jdbc:h2:mem:testDb;MVCC=TRUE;LOCK_TIMEOUT=10000;DB_CLOSE_ON_EXIT=FALSE
production:
dataSource:
dbCreate: update
url: jdbc:h2:./prodDb;MVCC=TRUE;LOCK_TIMEOUT=10000;DB_CLOSE_ON_EXIT=FALSE
但是,重新启动应用程序并添加新的域类后,我仍然看不到正在创建表。我正在使用Grails版本3.3.9和Groovy版本2.4.15。通常通常使用domainClass自动创建表吗?根据docs,应使用此设置自动创建表格...
证明该表毕竟是在创建的。我的错误是使用默认的占位符JDBC URL通过控制台登录。
当我用application.yml中的URL替换它时,向我显示了正确的表。