我有以下域类:的Groovy的findAll并且每个标签问题
class User = {
String username
...
Company company
}
class Company {
String name
...
}
即,有一个N:用户和公司之间1间的关系。 这些类是如此,我不能改变它们。
在show.gsp我想知道该公司的详细资料以及该公司的用户链接到 。
我知道我能做到这一点编写自己的标签,但我相信,这将使用每个标签或在的findAll标签是可能的。
如果我做了以下
<g:each in="${User.findAll('from User order by username')}" var="userInstance">
<li><g:link controller="role" action="show"
id="${userInstance.id}">${userInstance.encodeAsHTML()}</g:link>
</li>
</g:each>
我试图通过$ {} companyInstance作为一个参数,但无论我得到了一个异常,也没有工作。
我也试过使用User.findAllByCompany。
使用:
<g:findAll in="${user}" expr="it.company == ${companyInstance} ">
我得到一个空集。
有没有简单的方法来实现这一点,而不写一个taglib?
在此先感谢。
路易斯
你提到有n:1的关系,但是在你的公司类中,你不会引用用户的列表(或集合)。这是正常的吗? 目前我只能看到1:1的“belongsTo”关系。 – gizmo 2010-01-08 08:36:08
是的。其实这对我正在尝试做的事已经足够了。 company_id是用户表中的外键..无论如何,这个问题一般适用:如何将参数传递给findAll标记。每个标签。感谢您的评论(+1对你) – Luixv 2010-01-08 09:36:06