【发布时间】:2013-06-02 06:10:44
【问题描述】:
我正在学习 Grails,但我有一个关于旧表的问题。现在我在我的控制器中使用脚手架,但最终(当然)会将其构建到自定义控制器和视图中 - 现在我只是试图让模型正确。假设我有一个现有的表 FOOBAR,其中包含 FOOBAR_CODE(varchar,主键)和 FOOBAR_DESC(varchar)列 - 我如何对此建模(如创建域类,以便我可以 CRUD)?我在互联网上搜索无济于事 - 当然我只是错过了一些东西。查看示例,我的最后一次尝试如下。当我访问控制器的“列表”操作时,我看到一个“代码”和“Desc”列,“Desc”列中有值但“代码”列没有(我的应用程序连接到现有的表中包含一些行) - 很明显我的应用程序没有将我的“代码”属性/列与正确的列(FOOBAR_CODE)相关联 - 这进一步证明了当我尝试添加一个新条目时,我得到错误“字段'FOOBAR_CODE'没有默认值”-应用程序没有将创建表单上的“Desc”字段与数据库中的FOOBAR_DESC列相关联。我相信我的问题会在我未来的学习中得到解答,我知道我有点过分了。有人有什么建议吗?
我确信我的问题之一是“生成器:'assigned'”——它似乎依赖于数据库来分配一个值。
基本上,我有一个包含两个 varchar 列(一个是主键)的现有表,并且我正在尝试 CRUD 功能。
如果有任何见解,我将不胜感激!
谢谢!
class FOOBAR {
String id
String code
String desc
static constraints = {
}
static mapping = {
table "FOOBAR"
version false
columns {
id column: 'FOOBAR_CODE', generator: 'assigned', name: 'code'
desc column: "FOOBAR_DESC"
}
}
}
【问题讨论】:
标签: string grails primary-key grails-orm crud