我是Grails的新手,当我在所有域内容上运行项目时,在我的三个域中的两个域中出现此错误。作品的领域是
class Location {
def scaffold = true
String company
String name
String address
static belongsTo=[company:Company]
static constraints = {
}
}
无法使用的域
class Report {
def scaffold = true
String title
String location
Date published
static belongsTo=[location:Location]
static constraints = {
}
}
我看不到弄错错误的结构或语法问题。我一直在尝试各种添加和减法,似乎无法在基本级别找到解决此错误的任何内容。我刚刚开始使用Grails和Groovy
答案 0 :(得分:1)
执行@ araxn1d告知的更改后,您还应检查约束。默认情况下,所有属性都不可为空(这就是为什么你会得到title属性的错误)
如果您的数据库中已有数据,则有两种选择:
将域中的每个属性设置为可为空。例如
静态约束= { title nullable:true }
答案 1 :(得分:1)
您是否在创建没有设置属性的报告?默认情况下,Grails将检查所有属性是否为空。如果您想允许用户将某个字段保留为undefined(null),那么您必须在constraints map中明确告诉Grails:
static constraints = {
propertyName nullable: true
}
答案 2 :(得分:0)
似乎错误就在这一行:
String location
位置是String
类型,但应为Location
类型。与位置域中的String company
相同,应为Company company
。
答案 3 :(得分:0)
我认为问题在于,在为域生成自动创建的视图/控制器后,您已经更改了域类的结构。
我通过删除违规域以及控制器/视图文件并重新创建它来修复它。我相信你可以通过根本找到有问题的代码。