Отключить Grails Поисковый плагин поисковой страницы по умолчанию? - PullRequest
5 голосов
/ 03 июля 2010

Я пытаюсь отключить страницу поиска плагина Searchable по умолчанию (http://localhost/searchable/),, но не нашел способа сделать это. Кто-нибудь знает, как это можно сделать, желательно законным способом, но прибегает кобман при необходимости?

1 Ответ

4 голосов
/ 03 июля 2010

Я обычно перенаправляю обработчики кода ошибки на контроллер, чтобы я мог сделать какую-либо запись или что-то еще перед рендерингом представления.Вы также можете использовать это здесь:

class UrlMappings {

   static mappings = {

      "/searchable/$action?"(controller: "errors", action: "urlMapping")

      "/$controller/$action?/$id?" { }

      "/"(view:"/index")

      "403"(controller: "errors", action: "accessDenied")
      "404"(controller: "errors", action: "notFound")
      "405"(controller: "errors", action: "notAllowed")
      "500"(view: '/error')
   }
}

, где ErrorsController выглядит примерно так:

class ErrorsController {

   def accessDenied = {}

   def notFound = {
      log.debug "could not find $request.forwardURI"
   }

   def notAllowed = {}

   def urlMapping = {
      log.warn "unexpected call to URL-Mapped $request.forwardURI"
      render view: 'notFound'
   }
}

, и вам нужно будет создать accessDenied.gsp, notFound.gsp и notAllowed.gsp в grails-app / errors

Отправляя «скрытый» контроллер в его пользовательское сопоставление, вы можете регистрировать непредвиденный доступ к нему, но по-прежнему отображать страницу 404, чтобы скрыть его существование.

...