Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- paginateQuery :: Pagination -> Query a -> Query a
- paginateQuery (Pagination p w) = limit p . offset ((p-1) * w)
- paginate
- :: (CanOpaleye c e m, Default QueryRunner a b)
- => Pagination
- -> (a -> Column i)
- -> Query a
- -> m (PaginationResults b)
- paginate p getId q = do
- res <- liftQuery $ paginateQuery p q
- c <- liftQueryFirst . aggregate count . fmap getId $ q
- return $ PaginationResults
- (p^.paginationPage)
- (p^.paginationWidth)
- (fromMaybe 0 c)
- res
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement