谁能告诉我如何inList
在 Grails 控制器中声明约束?
假设我有这个课程:
class A {
List hello
}
如何在控制器inList
中为 from 添加约束hello
List
?
谁能告诉我如何inList
在 Grails 控制器中声明约束?
假设我有这个课程:
class A {
List hello
}
如何在控制器inList
中为 from 添加约束hello
List
?
定义一个约束,其中List
属性的值针对列表列表进行验证?听起来怪怪的。但你可以做到。有了这个类:
class A {
List hello
static constraint = {
hello inList:[['abc','def','ghi'],[1,2,3],['a','b']]
}
}
您可以在控制器中执行此操作:
def instance1 = new A(hello:['abc','def','ghi']).save() //valid
def instance2 = new A(hello:[1,2,3]).save() //valid
def instance3 = new A(hello:['a','b']).save() //valid
def instance4 = new A(hello:['a','b','c']).save() //invalid
def instance5 = new A(hello:[1,2]).save() //invalid
但是,如果A
是一个域类,其实例保存在传统数据库中,则该hello
属性将被删除,因此您需要使用
static hasMany = [hello: SomeClass]
反而。
您可以将自定义验证器写入您的字段,以检查数据是否在列表中。您将不得不手动实施列表检查。你可以在这里找到官方文档。有一些stackoverflow条目可以帮助你喜欢