我有一個域類調用應用程序如下訪問屬性:如何從Grails的查詢
class Application {
static hasOne = [resumption:Resumption, employee:Employee]
//Employee employee
Date startDate
Date endDate
Integer amountOfDays
String leaveRecommended
String leaveNotRecommended
Date supervisorDate
String toString(){
return "Application for ${employee.lastName}, ${employee.firstName}"
}
}
在ApplicationController中我試圖寫是要找到匹配特定的員工,所有的應用程序查詢ID。我這樣做如下:
def applicationlist(){
if(!params.max){
params.max = 10
}
def query
def criteria = Application.createCriteria()
def results
query = { eq("employee_id", Long.parseLong("1")) }
results = criteria.list(params, query)
render(view:"employeeapplicationlist", model:[applicationlist:results])
}
現在,我不斷收到錯誤:「無法解析屬性:EMPLOYEE_ID」 我已經檢查在MySQL中生成的應用程序表中,有一個名爲僱員標識與值列。奇怪的是我可以訪問任何其他屬性(如amountOfDays),那麼與employee_id有什麼關係?爲什麼它抱怨它無法解決財產?我錯過了什麼?提前致謝。
哦,看起來我還沒有完全適應對象級別上的數據庫接口。對於有此類問題或類似問題的其他人,以下是修復程序: query = {eq(「employee.id」,Long.parseLong(「1」))} 正弦應用程序域類有一個Employee,那麼我們只需要訪問該員工的ID字段。請記住我們在ApplicationController中。原來我不能這麼快回答我的問題。如果我幾個小時後忘記回來做一個適當的帖子,我會將其作爲評論發佈。希望它能幫助別人。 – Mark 2012-03-19 05:20:45