通过从 Grails 中的属性文件读取数据来创建下拉列表
Create Drop-down List By Reading Data From Properties File in Grails
如何使用Grails从message.properties文件中读取数据生成下拉列表?我已经创建了域文件:
class Feedback {
enum Type {
COMPT("compt") ,
COMPL("compl") ,
ENQ("enq")
final String typeID
Type (String typeID){
this.typeID = typeID
}
String toString(){
typeID
}
}
static constraints = {
typeID inList: Type.values()*.typeID
}
}
这是我存储在 message.properties 文件
中的数据
type.compt=Complaint
type.compl=Compliment
type.enq=Enquiry
如何使用taglib显示GSP中的信息?
要根据给定参数获取消息,您可以使用
<g:message code="type.${passedFeedbackType}" />
从枚举列表生成下拉列表的基本步骤如下:
<g:select name="yourList" value="${value_you_want_to_have_first}"
from="${Feedback.Type.values()}" optionValue="${it}"
optionKey="typeId"/>
但是您想将 属性 消息作为一个值。您还可以使用标签库中的 message
作为
${g.message(code:'your.message.code')}
例如,您的问题的解决方案是
<select>
<g:each in="${Feedback.Type.values()}" var="feedbackType">
<option value="${type}">${g.message(code:"type.${type}")}</option>
</g:each>
</select>
因为不知何故我无法让它与 <g:select>
一起工作,但最终它也会生成纯 HTML。
请记住在属性中包含所有相应的消息。
如何使用Grails从message.properties文件中读取数据生成下拉列表?我已经创建了域文件:
class Feedback {
enum Type {
COMPT("compt") ,
COMPL("compl") ,
ENQ("enq")
final String typeID
Type (String typeID){
this.typeID = typeID
}
String toString(){
typeID
}
}
static constraints = {
typeID inList: Type.values()*.typeID
}
}
这是我存储在 message.properties 文件
中的数据 type.compt=Complaint
type.compl=Compliment
type.enq=Enquiry
如何使用taglib显示GSP中的信息?
要根据给定参数获取消息,您可以使用
<g:message code="type.${passedFeedbackType}" />
从枚举列表生成下拉列表的基本步骤如下:
<g:select name="yourList" value="${value_you_want_to_have_first}"
from="${Feedback.Type.values()}" optionValue="${it}"
optionKey="typeId"/>
但是您想将 属性 消息作为一个值。您还可以使用标签库中的 message
作为
${g.message(code:'your.message.code')}
例如,您的问题的解决方案是
<select>
<g:each in="${Feedback.Type.values()}" var="feedbackType">
<option value="${type}">${g.message(code:"type.${type}")}</option>
</g:each>
</select>
因为不知何故我无法让它与 <g:select>
一起工作,但最终它也会生成纯 HTML。
请记住在属性中包含所有相应的消息。