【发布时间】:2015-07-24 17:39:24
【问题描述】:
我有三个课程: 参与者有许多会话 会议有许多参与者 Session_plan 将 Participants 和 Sessions 放在一起
所以,我想查询 Session_plan 并获取 Sessions 及其参与者的列表,但我不明白该怎么做。我已经注释掉了 'hasMany' 和 'belongsTo' 以确保我至少从类中获取数据......而且我是,但是当我试图将它们放回并列出数据时(通过连接,我根本没有得到任何数据。我不知道我做错了什么。请指教。
package mytest
import mytest.Session_plan
class Sessions {
//static hasMany = [session_plan: Session_plan]
//static mapping = {
//session_plan indexColumn: [name: "session_id", type: String],
// joinTable: [column: " sessio_id"]}
String session_id
String session_name
String session_tier
static constraints = {
session_id(blank: false)
session_name(blank: false)
session_tier(blank: false)
}
}
package mytest
class Session_plan {
//static belongsTo = Sessions
String session_id
String participant_id
Boolean authorization
Boolean step
Boolean limit
Sessions sessions
Particiipant particiipant
static embedded = ['sessions','particiipant']
static constraints = {
session_id(blank: false)
participant_id(blank: false)
authorization(blank: false)
step (blank: false)
limit(blank: false)
}
}
package mytest
class Particiipant {
//static belongsTo = Session_plan
String participant_id_type
String participant_id
static constraints = {
participant_id_type(blank: false)
participant_id(blank: false)
}
}
import grails.converters.JSON
import org.hibernate.Query
import org.hibernate.criterion.CriteriaSpecification
import mytest.Session_plan
import mytest.Sessions
import mytest.Participants
class BootStrap {
def init = { servletContext ->
// Check whether the test data already exists.
…
// Create data
…
// Check to see if we have data in the tables
//def list = Sessions.executeQuery("select e from Sessions e, Session_plan ed where ed.session_id = e ")
//list.each { sessions->
//println "session_id = ${sessions.session_id}"
//}
//def results = Sessions.list()
//results.each { sessions->
//println "session_id = ${sessions.session_id}: session_name = ${sessions.session_name}; sessions_tier = ${sessions.sessions_tier}"
//}
def list = Session_plan.list()
results.each { session_plan->
println "session_id = ${sessions_plan.session_id}"
}
}
def destroy = {
}
}
这列出了我的数据,但是当我尝试列出“限制”等其他字段时,什么也没有打印出来。
def list = Session_plan.list()
results.each { session_plan->
println "session_id = ${sessions_plan.session_id}"
}
我已经用头撞墙两天了。您可以提供的任何帮助将不胜感激。谢谢
【问题讨论】: