2013-12-01 4 views
4

Я пытаюсь сделать это:общий вид URL отображение в Граалей

"/templates/$tml"{ 
     view: "/templates/$tml" 
    } 

и это:

"/templates/$tml"{ 
     view: "/templates/${tml}" 
    } 

и это:

"/templates/$tml"{ 
     view: "/templates/${params.tml}" 
    } 

Но ни один из них не работает. В папке шаблона у меня много файлов GSP, и я не хочу их сопоставлять один за другим, вместо этого я хочу, чтобы какой-то общий код отображал их как сопоставление контроллера.

Спасибо за помощь!

ответ

6

Пробовали ли вы что-нибудь подобное?

В UrlMappings.groovy:

"/templates/$tml"(controller: "templates", action: "generateView") 

В TemplatesController.groovy:

def generateView(String tml){ 
    render(view: tml) 
} 
+0

Да, это работает! Благодаря!!! нет ли возможности сделать это без контроллера? Я просто хочу быть уверенным, что принимаю лучшее решение ... – Noampz

0

Я не уверен, но вы можете попробовать что-то вроде этого

"/templates/$tml"(view: "/templates/$tml") 

Обычная процедура является

"/templates/$tml"{ 
    controller = "general" 
    action = "generalAction" 
    //pageName = "yourpage" 
} 
+0

Я попробовал этот код, а (я забыл написать это в всех примерах в вопросе), это один был мой первая попытка сделать это, и это выглядит наиболее интуитивно понятным способом, но это не работает – Noampz