Grails:如何使用条件绑定域类
我在Grails中有两个域类,它们将与state和country的相应表单字段交互。是否有任何方法可以有条件地绑定它们,这样用户就不会犯试图提交错误的错误。例如,“伊利诺伊州芝加哥”将是有效的,但“墨西哥芝加哥”将是无效的。在普惠制或控制器内这样做会更容易吗?谢谢你的帮助-这是我以前从未尝试过的Grails:如何使用条件绑定域类,grails,grails-domain-class,Grails,Grails Domain Class,我在Grails中有两个域类,它们将与state和country的相应表单字段交互。是否有任何方法可以有条件地绑定它们,这样用户就不会犯试图提交错误的错误。例如,“伊利诺伊州芝加哥”将是有效的,但“墨西哥芝加哥”将是无效的。在普惠制或控制器内这样做会更容易吗?谢谢你的帮助-这是我以前从未尝试过的 class State { String name String value int orderNumber = 0 static constraints = {
class State {
String name
String value
int orderNumber = 0
static constraints = {
name nullable:false, maxSize:50, blank:false
value nullable:false, maxSize:100, blank:false
}
String toString(){
"$name - $value"
}
static mapping = {
table 'state'
cache: 'read-write'
columns{
id column:'id'
name column:'name' //abbreviation
value column:'value' //state name
orderNumber column:'order_number' // numerical list order
}
id generator: 'assigned'
}
}
class Country {
String name
String value
int orderNumber = 0
static constraints = {
name nullable:false, maxSize:50, blank:false
value nullable:false, maxSize:100, blank:false
}
String toString(){
"$name - $value"
}
static mapping = {
table 'country'
cache: 'read-write'
columns{
id column:'id'
name column:'name' //abbreviation
value column:'value' // country name
orderNumber column:'order_number' // numerical list order
}
id generator: 'assigned'
}
}
表单字段
<div class="col-sm-1">
State<g:select name="State" from="" value="" class="form-control" type="text" label="state" required="true"/>
</div>
<div class="col-sm-2">
Country<g:select name="Country" from="" class="form-control" type="text" label="country" required="true"/>
</div>
陈述
国家
您需要将表单输入使用到,并使用验证逻辑对该命令对象进行验证。文档中有很多很好的细节
祝你好运 看看AjaxDependencySelection插件,它试图回答这类问题,我认为还有一些类似的问题