2011-05-27 1 views
8

短い質問Grails:フィルタでcreateLinkを使用するには?

createLinkをフィルタに使用するにはどうすればよいですか?

私はエラーを取得しています:

No signature of method: MyFilters.createLink() is applicable for argument types...

私のコードは、このコードは、コントローラ内部ではなく、フィルターで働く

createLink(controller:'home') 

です。

+0

はあなたのCREATELINK例にそのタイプミスでしょうか?コントローラーの名前でスペースが合法だとは思わない(検索の際に名前の後ろにControllerを追加しようとするので)。 – OldTroll

+0

OK、修正します。空白がありません – Topera

+0

あなたは 'g.createLink(controller: 'home')'を試しましたか? –

答えて

14

SOLVED! Grailsの2.で

import org.codehaus.groovy.grails.plugins.web.taglib.ApplicationTagLib 
... 
new ApplicationTagLib().createLink([controller: 'home']) 
5

*あなたは少しクリーナー可能性があり、grailsLinkGeneratorを注入することができます

def grailsLinkGenerator 
... 
grailsLinkGenerator.link(controller: 'home')