Grails 从领域模型自动生成数据库
Posted
技术标签:
【中文标题】Grails 从领域模型自动生成数据库【英文标题】:Grails auto-generate the database from the domain model 【发布时间】:2018-06-17 07:40:27 【问题描述】:我正在尝试在 Netbeans 中使用 Grails(3.2) 和 mysql 创建一个简单的应用程序。 我在 Grails 项目中配置了 MySql 并创建了一个名为 "third" 的数据库。创建域类模型、控制器(脚手架)和 CRUD 视图后,我的项目正在运行,但每当我尝试执行任何操作时 - screenshot of error
正在发生此错误。我无法解决这个问题,也尝试手动创建“Person”表,但出现同样的错误。
【问题讨论】:
您是否在开发模式下运行您的应用程序?您是如何在 application.yml 中配置数据库设置的?我的看起来像这样,并且可以工作:`环境:开发:dataSource:dbCreate:create-drop driverClassName:“com.mysql.jdbc.Driver”方言:null url:“jdbc:mysql:// localhost:3306/yourDbName?autoreconnect =true&useSSL=false" 用户名:"dbusername" 密码:"your-db-password" 属性:...` 我已经关注docs.grails.org/latest/guide/conf.html#dataSource这个过程。兄弟,我是新来的。你能帮我看看如何在 grails、mysql 中创建简单的 crud 吗?我知道 laravel,但互联网上没有太多关于 grails3 的教程。 您是否尝试过我为您提供的关于您上一个问题的链接的指南? guides.grails.org/creating-your-first-grails-app/guide/… 【参考方案1】:您的堆栈跟踪清楚地表明您的名称为 third 的数据库没有正确的表 person。但是你不应该手动创建这个表(如果你已经有 - 请从你的数据库中删除所有表)
连接看起来不错,但您应该查看 application.yml 中的 dbCreate 值。
dbCreate - 是否从域模型自动生成数据库 - 'create-drop'、'create'、'update' 或 'validate' 之一
https://docs.grails.org/latest/guide/conf.html
如果您只是使用简单的命令grails run-app
来启动服务器,那么您应该检查 environments: development 块中的值。
如果您需要个性化解决方案,请粘贴您的 application.yml 内容(无需数据库凭据)。
【讨论】:
以上是关于Grails 从领域模型自动生成数据库的主要内容,如果未能解决你的问题,请参考以下文章