我有一個很長的報告模板。它一次包含超過50個Grails域。但是,當我試圖加載到25域時,它說「無效的方法代碼長度」。我在谷歌搜索,它建議我拆分/查看模板。無效的方法很長的模板/視圖上的代碼長度
所以我做了以下修改:
之前,它是一個模板_template.gsp
但現在:_template.gsp和_template2.gsp
但裏面_template.gsp我把代碼,作爲
現在的問題它不會允許加載在控制器進入模板2載入的模型/對象....
在我的合作ntroller:
Class AbcController{
def index = {
def myParrent = MyParrent.get(1);
def mode = [:];
model.obj1 = Obj.findAllByParrent(myParrent);
model.obj2 = Obj2.findAllByParent(myParrent);
...
model.obj50 = Obj50.findAllByParrent(myParrent);
model.obj51 = Obj51.findAllByParent(myParrent);
def str = render(template:"template", model:model);
render(str);
}
}
爲什麼模型加載_template.gsp但_template2.gsp
編輯不承認任何想法:
_template.gsp想這一個(不是這一個簡單,因爲對於每個域對象我必須顯示一個接一個的字段)
<html><body>
<div>${obj1}</div>
<div>${obj2}</div>
<div>${obj3}</div>
....
<div>${obj24}</div>
<div>${obj25}</div>
......
<g:render template="template2"/>
.....
</body></html>
_template2.gsp:
<div>${obj26}</div>
<div>${obj27}</div>
<div>${obj28}</div>
........
<div>${obj50}</div>
因此,在一個網頁,我想一次顯示約50域(目的是爲了填寫表格,所以不要怪我,如果我要顯示在一旦所有的數據...)
感謝
你沒告訴我們你的模板代碼。 – Gregg 2011-02-03 16:15:31