我有兩個Grails領域類Grails的一對多的關係視圖
Class MultipleChoiceQuestion {
String question
static constraints = {
...
}
static hasMany = [options:MultipleChoiceOption]
}
和
class MultipleChoiceOption{
String answerOption
boolean correctOption
MultipleChoiceQuestion question
static constraints = {
...
}
}
我希望我的用戶能夠創建一個問題,再加入ATLEAST 3個選項,而導航/點擊在不同的屏幕上。
我的第一個問題是我必須生成視圖並開始編輯代碼?
如果上述問題的答案是肯定的,那麼我的第二個問題是,在一個表單提交中保存問題以及多個選項的最佳方法是什麼? 生成的代碼將具有類似於每個選項的內容。
<g:textField name="answerOption" value="${answerOptionInstance?.answerOption}"/>
<g:checkBox name="correctOption" value="${answerOptionInstance?.correctOption}"/>
我怎麼能在一個頁面中有多個這樣的元素? 請看線框以瞭解我想要達到的目標,對於創建的線框不好表示歉意。 單擊鏈接在你的瀏覽器中打開圖像 http://cynosuredev.com/wf.png
這看起來像我需要的截圖,但示例代碼似乎沒有在我的環境中工作,我無法理解它是如何從一個GSP創建一個域類的多個實例 – Sap 2012-01-07 20:48:00
Error 2012- 01-08 03:00:41,733 [「http-bio-8080」-exec-5] ERROR hibernate.AssertionFailure - 發生斷言失敗(這可能表示Hibernate中存在錯誤,但更可能是由於會話的不安全使用) 消息:blog.omarello.Phone條目中的null id(發生異常後不刷新會話) Line |方法 - >> 43 | DoCall in blog.omarello.ContactController $ _closure4 $$ ENLMAh4X - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | 886 | java.util.concurrent.ThreadPoolExecutor中的runTask $ Worker | 908 |跑 。 。在'' – Sap 2012-01-07 21:36:41
好吧,我發現它,我改變了模板gsp(_phone/_phones)輸入的名稱需要與屬性名稱匹配。 它定義'phoneList'而不是'phones';許多關係是在名字上完成的。 http://pastebin.com/uqbLBZZd – Kidi 2012-01-10 13:57:42