wheb-mongo: MongoDB plugin for Wheb
This is a package candidate release! Here you can preview how this package release will appear once published to the main package index (which can be accomplished via the 'maintain' link below). Please note that once a package has been published to the main package index it cannot be undone! Please consult the package uploading documentation for more information.
Warnings:
- Exposed modules use unallocated top-level names: Web
Wheb plugin for MongoDB.
Implements SessionBackend and AuthBackend instances using MongoDB and Wheb.
Creates simple interface for arbitrary MongoDB actions using Wheb
Creates simple interface for arbitrary MongoDB actions using mongoDB
For a complete example, see the examples folder at github
You can override the collection names for the Auth and Session documents by using addSetting
and setting keys for "session-collection"
and "auth-collection"
opts <- generateOptions $ do addSetting "session-collection" "my-collection"
Reimplimentation of official example below. Use with language extensions OvererloadedStrings & ExtendedDefaultRules.
import qualified Data.Text.Lazy as T import Web.Wheb import Web.Wheb.Plugins.Mongo data MyApp = MyApp MongoContainer data MyRequestState = MyRequestState instance MongoApp MyApp where getMongoContainer (MyApp mc) = mc homePage :: WhebHandler MyApp MyRequestState homePage = do teams <- runAction $ rest =<< find (select [] "team") text $ T.intercalate " | " $ map spack teams main :: IO () main = do opts <- generateOptions $ do addGET "." rootPat $ homePage mongo <- initMongo "127.0.0.1:27017" "master" return (MyApp mongo, MyRequestState) runRawHandler opts $ do runAction $ do delete (select [] "team") insertMany "team" [ ["name" =: "Yankees", "home" =: ["city" =: "New York", "state" =: "NY"], "league" =: "American"], ["name" =: "Mets", "home" =: ["city" =: "New York", "state" =: "NY"], "league" =: "National"], ["name" =: "Phillies", "home" =: ["city" =: "Philadelphia", "state" =: "PA"], "league" =: "National"], ["name" =: "Red Sox", "home" =: ["city" =: "Boston", "state" =: "MA"], "league" =: "American"] ] runWhebServer opts
Properties
Versions | 0.0.1.0, 0.0.2.0, 0.0.2.0, 0.0.3.0 |
---|---|
Change log | None available |
Dependencies | base (>=4.7 && <4.8), bson (>=0.3 && <0.4), mongoDB (>=2.0 && <2.1), mtl (>=2.1 && <2.3), text (>=1.0 && <1.2), Wheb (>=0.2 && <0.3) [details] |
License | BSD-3-Clause |
Author | Kyle Hanson |
Maintainer | hanooter@gmail.com |
Category | Database |
Home page | https://github.com/hansonkd/Wheb-Framework |
Uploaded | by hansonkd at 2014-08-03T17:08:21Z |
Modules
[Index]
- Web
- Wheb
- Plugins
- Wheb
Downloads
- wheb-mongo-0.0.2.0.tar.gz [browse] (Cabal source package)
- Package description (as included in the package)
Maintainer's Corner
Package maintainers
For package maintainers and hackage trustees