Thanks Norbert! It's cool to know that you like it :) Together with Esteban's work on Voyage, it allows us to do extremely cool stuff with Mongo and Pharo.
What I like with Voyage-Mongo + MongoQueries is that objects are persisted without any effort, it just works, and we can query Mongo collections like we would do with Smalltalk collections. Nico Norbert Hartl <[email protected]> writes: > Hey Nico, > > I looked into your new stuff and I like it. Especially the MongoQueries stuff > is very simple and clean approach to do a small DSL. That boosts the > usability of MongoTalk extremely. Bravo! > > Norbert > > Am 19.11.2012 um 15:37 schrieb Nicolas Petton <[email protected]>: > >> >> Hi guys, >> >> Lately I worked a bit on the Pharo Mongo driver for SmalltalkHub. I made >> several changes (in the new version 1.4): >> >> The query API changed: >> >> - MongoCollection>>query: now takes a 1 arg block, improving the API >> quite a bit. >> >> Queries like: >> >> aCollection query: (aCollection query >> query: { 'foo' -> 'bar'} asDictionary; >> yourself) >> >> Is now written: >> >> aCollection query: [ :query | >> query where: { 'foo' -> 'bar'} ] >> >> Sending #asDictionary has also been made optional, the query builder >> will send #asMongoQuery to the query collection. >> >> >> The MongoQueries package: >> >> Version 1.4 comes with a new package MongoQueries, a small DSL allowing >> us to use traditional blocks instead of dictionaries to perform >> queries. This is optional and backward compatible. >> >> Queries like: >> >> aCollection select: { '$or' -> { 'name' -> 'foo'. 'age' -> { '$gt' -> 23 } >> asDictionary } asDictionary } asDictionary >> >> can be expressed: >> >> aCollection select: [ :each | (each name = 'foo') | (each age > 23) ] >> >> The MongoQueries package should support the entire mongo query language >> (including nested queries), and comes with unit tests. >> >> Nico >> > > -- Nicolas Petton http://nicolas-petton.fr
