АРХИВ ЗА 2011 ГОД
ОКТЯБРЬ 5, 2011

grails logo Grails URL mappings   different controllers by HTTP method %d1%82%d0%b5%d1%85%d0%bd%d0%be%d0%bb%d0%be%d0%b3%d0%b8%d0%b8

Hey.

Grails замечательная штука, но иногда чтобы понять как оно работает, нужно все таки в код посмотреть icon smile Grails URL mappings   different controllers by HTTP method %d1%82%d0%b5%d1%85%d0%bd%d0%be%d0%bb%d0%be%d0%b3%d0%b8%d0%b8

Например задача: нужно на один и тот же урл в зависимости от HTTP метода заюзать различные контроллеры. Для различных экшенов и одного контроллера это делается легко:

«/api/stuff/$id» (controller: 'stuff') {
  1.    action = [ GET: 'show', PUT: 'update', DELETE: 'delete' ]
  2.   }

Т.е. на «/api/stuff/123 DELETE» мы вызовем StuffController::deleteAction().

А мы хотим различные контроллеры:

  • «/api/stuff/123 DELETE» мы вызовем StuffCustomController::deleteAction(),
  • для остальных хттп методов: ApiController::stuffAction().

Тогда нужно немножко копнуть в грейлс код. В таком замечательном интерфейсе как org.codehaus.groovy.grails.web.mapping.UrlMapping можно увидеть, что в getActionName() и getControllerName() возвращается Closure или String. Собсно нас интересует closure. Раз это замыкание, то мы легко можем сделать свитч по текущему методу из реквест объекта и таким образом динамически сказать какой контроллер нужно бы сейчас заюзать.

В итоге:

«/api/stuff/$id» {
  1.    controller = {
  2.     switch (request?.method) {
  3.      case 'DELETE':
  4.       return 'stuffCustom'
  5.      default:
  6.       return 'api'
  7.     }
  8.    }
  9.    action = {
  10.     switch (request?.method) {
  11.      case 'DELETE':
  12.       return 'delete'
  13.      default:
  14.       return 'stuff'
  15.     }
  16.    }
  17.   }
СЕНТЯБРЬ 28, 2011

Hey.

Уважение новозеландским парням, перед каждым матчем наводят страх соперника и веселят зрителей icon smile New Zeland Rugby Team Haka %d1%81%d1%82%d1%91%d0%b1

СЕНТЯБРЬ 21, 2011

Hola.

Ребята из лондона замутили очередной отличный видео клип, смотрим смотрим.

BONUS Вы можете видеть Санька в нескольких эпизодах где многа народу (чувакон в розовой футболке).

СЕНТЯБРЬ 15, 2011

img 0281 1024x768 Im back news

Hola.

Чувачки.

Я вернулсо доминго в чудо страну опять. Фоточки можно посмотреть вконтакте.

Нужно будет чо нить запостить на досуге, ну а пока что работа работа.

СЕНТЯБРЬ 6, 2011

Hola.

Dudekos!

Еще одно отличное видео отличных английских парней, с которыми мы тусили в субботу.

PS Вау, неужели тут дождик! не прошло и недели, finally, я рад.

PS2 Нужно обновить проездной, готовность ?27.80.

PS3 Прошли вчера вечером МК3 первую ladder, мочканули Шао Кана!

PS4 Начали Resident Evil 2 — прошли где то 30% по ощущениям. Сегодня можно добить.

СЕНТЯБРЬ 6, 2011

Hey.

Милое видео. Мега креативчик. Зацените-ка.

Страницы:12345...21