Załóżmy, że mamy aplikację internetową grails prezentującą kilka zasobów.Aplikacja RESTful grails: DRY up up UrlMapping
- tagi
- adresy URL
- użytkowników
Aplikacja posiada klasyczny interfejs WWW których użytkownicy korzystają z pewnego i administracji. Chcemy udostępnić zasoby z aplikacji klientom za pośrednictwem RESTful API i nie chcemy, aby ta część aplikacji zaśmiecała kontrolery i kod, który już mamy. Wyszukaliśmy następujące:
Jeśli interfejs WWW oferuje host/app_path/url/[list|show|create]
, chcemy, aby interfejs API REST był pod adresem /host/app_path/rest/url
.
więc skończyło się z poniższym pliku UrlMappings:
Problem polega na tym, że nie jest to dokładnie najbardziej DRY rzeczą tutaj. Jest coraz gorzej, gdy dodajemy więcej zasobów, takich jak tagi. Będą tłumaczyć jeszcze innego trzech bloków o bardzo podobnym kodzie ...
Funkcje non-crud będą rzeczy jak wyszukiwanie konkretnych kryteriów i takie ...
Próbowaliśmy generując zamknięć odwzorowania z pętli , ale bez powodzenia. Czy jesteśmy tutaj zupełnie na niewłaściwym torze?
Ahh, rzecz PUT/POST: D – kungfoo