diff --git a/codegen/dispatch.cg b/codegen/dispatch.cg
--- a/codegen/dispatch.cg
+++ b/codegen/dispatch.cg
@@ -11,6 +11,7 @@
 {-# OPTIONS_GHC -fno-warn-orphans #-}
 module Handler.~{moduleName m} 
     ( module Handler.~{moduleName m}.Enums, module Handler.~{moduleName m}.Internal ) where
+import Handler.~{moduleName m}.Enums
 import Handler.~{moduleName m}.Internal
 import Yesod.Core
 import Yesod.Auth
diff --git a/codegen/header.cg b/codegen/header.cg
--- a/codegen/header.cg
+++ b/codegen/header.cg
@@ -137,16 +137,12 @@
     fromPathPiece = safeRead
     toPathPiece = T.pack . show
 
-instance PathPiece a => PathPiece [a] where
+instance (PathPiece a, Show a) => PathPiece [a] where
     fromPathPiece s = do
         parts <- safeRead s
         values <- mapM fromPathPiece parts
         return values
-    toPathPiece values = T.concat [ 
-            T.pack "[",
-            T.intercalate (T.pack ",") (map toPathPiece values),
-            T.pack "]" 
-        ]
+    toPathPiece = T.pack . show
             
 
 getDefaultFilter maybeGetParam defaultFilterJson p = do
diff --git a/yesod-dsl.cabal b/yesod-dsl.cabal
--- a/yesod-dsl.cabal
+++ b/yesod-dsl.cabal
@@ -1,5 +1,5 @@
 name:           yesod-dsl
-version:        0.1.1
+version:        0.1.1.1
 license:        BSD3
 license-file:   LICENSE
 author:         Tero Laitinen 
