我正在使用Grails 3.3.10开发应用程序,试图创建一个下拉列表,但我将其清空为空,将值放入application.yml文件中,以下是我的代码。

application.yml:

profile:
   accType: ['supplier', 'buyer', 'both']

域:
class Profile {
String accType
static constraints = {
accType(nullable: true, InList: Holders.config.getProperty('profile.accType'))
  }

}

_form.gsp
<g:select required="" style="width:auto;" class="form-control input" name="accType" from="${Profile.constrainedProperties.accType.inList}" value="${profileInstance?.accType}" valueMessagePrefix="profile.accType"/>

最佳答案

你有这个:

static constraints = {
    accType(nullable: true, InList: Holders.config.getProperty('profile.accType'))
}

您可能想要这样:
static constraints = {
    accType(nullable: true, inList: Holders.config.getProperty('profile.accType', List))
}

请注意,InList应该是inList,开头是小写"i",并且您想将2个参数传递给getProperty,第二个参数是List类文字。

07-24 13:13