2013-05-25 14 views
7

Próbuję podać zapytania w sposób podobny do odpoczynku w moich trasach yesod, np.Czy można określić parametry zapytania w trasach Yesod?

mkYesod "HelloWorld" [parseRoutes| 
/HomeR GET 
/first/?count=#Int FirstR GET 
/second/?count=#Int SecondR GET 
|] 

Ale to daje mi następujący błąd:

The function `FirstR' is applied to one argument, 
but its type `Route HelloYesod' has none 

Ale jeśli wciskam że #Int powrotem do bycia częścią ścieżki, to wszystko jest w porządku. Zakładam, że dzieje się tak dlatego, że trasa nie jest generowana z parametrem?

Czy jest jakiś sposób, aby określić ten parametr na mojej trasie?

+2

To nie jest WYPOCZYNEK! (i Yesod to REST): D Dlaczego nie po prostu "/ first/count/# Int"? :) – josejuan

Odpowiedz

10

Nie, nie jest to możliwe przy obecnej konfiguracji, ale jest to dodatek, który rozważałem w przeszłości. Głównymi powodami, których ja nie mam (1) prawdopodobnie sprawiłoby, że normalny przypadek byłby nieco trudny do osiągnięcia, i (2) jak wspomina josejuan, często (choć nie zawsze) można to przekształcić w parametr oparty na trasie.

+1

Dzięki za odpowiedź, to nie jest problem dla mnie, aby popchnąć te z powrotem do URI, byłem po prostu ciekawy (i idąc króliczą dziurą). – Khanzor

Powiązane problemy