0
我得到了這樣的情況: - 用的hasMany角色和屬於關聯角色 類用戶 - 與hasMans User類角色查找對象 - Grails的
我如何能得到角色屬於用戶,對象用戶給出, 我如何獲得對象在多對多的szanario?
findByX不起作用,它隻影響一個表,但我需要一個「查找」或其他東西來查找整體/超過許多表的對象。
任何人都可以幫助我嗎?並原諒我沒有propper英語^^
我得到了這樣的情況: - 用的hasMany角色和屬於關聯角色 類用戶 - 與hasMans User類角色查找對象 - Grails的
我如何能得到角色屬於用戶,對象用戶給出, 我如何獲得對象在多對多的szanario?
findByX不起作用,它隻影響一個表,但我需要一個「查找」或其他東西來查找整體/超過許多表的對象。
任何人都可以幫助我嗎?並原諒我沒有propper英語^^
如果你有一個User類,看起來像這樣:
class User {
String username
static hasMany = [roles: Role]
static belongsTo = Role
}
和角色類,看起來像這樣:
class Role {
String name
static hasMany = [users: User]
}
那麼你的角色類有一個用戶集合 - hasMany定義了這個集合。用戶及其角色也是如此。
所以,如果你有一個用戶,用戶的角色只是「user.roles」:
def user = User.findByUsername('foo')
user.roles.each { role ->
println "User $user.username has role $role.name"
}
,你可以做同樣的事情角色:
def role = Role.findByName('ROLE_ADMIN')
role.users.each { user ->
println "User $user.username has role $role.name"
}
感謝,這似乎工作,沒有錯誤。 你能告訴我如何通過使用bootstrap創建測試數據,生成用戶和角色簡單的作品,但我該如何引導那裏的關係? – Oliver 2010-05-01 21:38:40
您使用動態addToXXX方法,在這種情況下,role.addToUsers(用戶) - 請參閱http://grails.org/doc/latest/guide/5.%20Object%20Relational%20Mapping%20(GORM).html#5.2 1.3%20Many一對多 – 2010-05-02 05:14:22