ユーザーがドメインクラスをトラバースして、ダンプを出力できるようにしたい。私の最初の問題:次のことがうまく機能すると仮定します:
//this works
class EasyStuffController{
def quickStuff = {
def findAThing = MyDomainClass.findByStuff(params.stuff)
[foundThing:findAThing]
}
}
私が以下に言おうとしていることを書くための適切な方法は何ですか?
//this doesn't
class EasyStuffController{ servletContext ->
def quickStuff = {
def classNameString = "MyDomainClass" //or params.whichOne something like that
def domainHandle = grailsApplication.domainClasses.findByFullName(classNameString)
//no such property findByFullName
def findAThing = domainHandle.findByStuff(params.stuff)
[foundThing:findAThing]
}
}
//this also doesn't
class EasyStuffController{ servletContext ->
def quickStuff = {
def classNameString = "MyDomainClass" //or params.whichOne something like that
def domainHandle
grailsApplication.domainClasses.each{
if(it.fullName==classNameString)domainHandle=it
}
def findAThing = domainHandle.findByStuff(params.stuff)
//No signature of method: org.codehaus.groovy.grails.commons.DefaultGrailsDomainClass.list() is applicable
[foundThing:findAThing]
}
}
上記の行はまったく機能しません。私は、ユーザーが任意のドメインクラスを選択して、「もの」で元に戻すことができるようにしようとしています。仮定:すべてのドメインクラスには、同じタイプのStuffフィールドがあります。