【问题标题】:populate a dropdown in grails在 grails 中填充下拉列表
【发布时间】:2018-05-09 18:34:30
【问题描述】:

我有一个用户,我给它一个角色,我希望在创建用户时,在下拉列表中显示角色,然后我可以选择我想给他​​的角色,我该怎么做它 ??请我真的需要帮助,因为我是 grails 的新手,这里是 user.groovy

class User {

transient securiteService

String username
String password
String nom
String prenom
String email
String tel

static hasMany = [roles : Role]

static constraints = {
    username blank: false, unique: true
    password blank: false,display: false
    nom nullable: true
    prenom nullable: true
    email email:true, nullable:true
    tel nullable:true, maxSize:20,  matches:/[\+]{0,1}[0-9\s]{3,15}/
}

static mapping = {
    password column: '`password`'
    sort nom: "asc"
    affectations sort : "dateAffectation", order:"desc"
    intervention sort : "responsable", order:"desc"
}
}

【问题讨论】:

  • 到目前为止您尝试过什么?并解释完整的流程,您希望如何以及在何处填充下拉列表?
  • @NitinDhomse 我什么都没尝试,因为首先我不知道怎么做,我有用户的视图创建,我希望它包含一个让我选择角色的下拉列表,知道这个角色有它自己的领域类,现在事情清楚了吗?

标签: grails dropdown


【解决方案1】:

以下示例将帮助您,根据您的需要对代码进行必要的更改。 例如你有一个表/域角色

class Role {
   String roleId
   String roleName  // e.g ROLE_ADMIN
}

// 在您的 GSP 视图中填充下拉列表(这将填充角色表中存在的所有角色)

<g:select from="${Role.list().roleName}" name="selectUserRole"
                                optionKey=""
                                optionValue=""/>

【讨论】:

  • 显示此错误我不知道为什么:无法在空对象上调用方法 list()
  • 因为你的表是空的或者那个间隙中没有导入域类角色,所以在表中插入一些记录
  • 您的 Role 实例为空,您是否导入了该域类?
  • like 或使用 from="${com.temp.Role.list().roleName}" temp 是这里的示例包名称
  • 如果我想将此角色保存给该用户该怎么办,兄弟
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多