From 48cae5396e0ad3f99cd922056eaf0124354f3992 Mon Sep 17 00:00:00 2001 From: Alberto Valverde Date: Wed, 1 Apr 2015 19:06:10 +0200 Subject: [PATCH] allow returning custom id columns from queries if they're not composite --- src/Database/Esqueleto/Internal/Sql.hs | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/Database/Esqueleto/Internal/Sql.hs b/src/Database/Esqueleto/Internal/Sql.hs index a8971f4..a0d6e74 100644 --- a/src/Database/Esqueleto/Internal/Sql.hs +++ b/src/Database/Esqueleto/Internal/Sql.hs @@ -1093,7 +1093,10 @@ instance PersistEntity a => SqlSelect (SqlExpr (Maybe (Entity a))) (Maybe (Entit instance PersistField a => SqlSelect (SqlExpr (Value a)) (Value a) where sqlSelectCols info (ERaw p f) = let (b, vals) = f info in (parensM p b, vals) - sqlSelectCols _ (ERawList _) = unexpectedCompositeKeyError + sqlSelectCols info (ERawList f) = let (b, vals) = f info + in case b of + [b'] -> (parensM Parens b', vals) + _ -> unexpectedCompositeKeyError sqlSelectColCount = const 1 sqlSelectProcessRow [pv] = Value <$> fromPersistValue pv sqlSelectProcessRow _ = Left "SqlSelect (Value a): wrong number of columns."