我有两个Domain类: -
class Product {
ProductType productType
int openingQuantity
int unitQuantity
Date dateCreated
Date lastUpdated
boolean active
static constraints = {
productType(blank:false,nullable:false)
openingQuantity(blank:false, nullable:false)
unitQuantity(blank:false, nullable:false)
active(nullable:false)
dateCreated()
lastUpdated()
}
}
和
class ProductType {
String name
Date dateCreated
Date lastUpdated
static constraints = {
name(nullable:false, blank:false,maxSize:50,validator: {
return !ProductType.findByNameIlike(it)
})
dateCreated()
lastUpdated()
}
}
当我在Product的create.gsp时。它在下拉列表中将productType显示为id。但我的要求是在下拉列表中显示ProductType名称。谁能请你帮忙。
答案 0 :(得分:1)
您可以在ProductType类上覆盖toString;
String toString() { name }
或者,假设您正在使用默认的脚手架,请更改:
<g:select name="productType.id"
from="${com.ten.hp.his.pharmacy.ProductType.list()}"
optionKey="id"
value="${productInstance?.productType?.id}" />
添加optionValue
,如下所示:
<g:select name="productType.id"
from="${com.ten.hp.his.pharmacy.ProductType.list()}"
optionKey="id"
optionValue="name"
value="${productInstance?.productType?.id}" />