在使用mongoMapper的时候,会用到一些比较复杂的查询,往往这个时候去看MongoMapper的文档发现并没有这些API的介绍。只是能发现很多人在用,比如
$where
conditions.merge!( :conditions => {'$where' => "/#{options[:searchterm].strip.gsub(/\//, '\/')}/i.test( this.name + ' ' + this.urls.join(' ') )" } )
当然,你不能企图找join什么的方法,原因我就不说了。
实际上,很多复杂的MongoMapper查询没有文档是因为,我们完全可以参考MongoDB的文档来解决。如下是MongoDB的高级查询的文档,相当完善
http://www.mongodb.org/display/DOCS/Advanced+Queries
如下是关于$where使用的介绍
引用
Javascript Expressions and $where
In addition to the structured query syntax shown so far, you may specify query expressions as Javascript. To do so, pass a string containing a Javascript expression to find(), or assign such a string to the query object member $where. The database will evaluate this expression for each object scanned. When the result is true, the object is returned in the query results.
For example, the following statements all do the same thing:
db.myCollection.find( { a : { $gt: 3 } } );
db.myCollection.find( { $where: "this.a > 3" } );
db.myCollection.find("this.a > 3");
f = function() { return this.a > 3; } db.myCollection.find(f);
引用
Javascript executes more slowly than the native operators listed on this page, but is very flexible. See the server-side processing page for more information.
可见,我们只要稍微的转换格式,就是mongomapper的查询了,所以MongoMapper比起ActiveRecord没有特别多API文档
分享到:
相关推荐
7. **嵌入式文档**:MongoMapper支持嵌入式文档(Embedded Documents),这是一种优化数据模型和减少查询的方法。例如,一个用户可以拥有嵌入的地址信息: ```ruby class Address include MongoMapper::...
MongoMapper Mongo的Ruby对象映射器。 安装 $ gem install mongo_mapper 文献资料 兼容性 MongoMapper已针对以下方面进行了测试: MRI 2.4-2.7 JRuby(具有1.9兼容性的版本) 此外,MongoMapper还针对以下方面...
学习如何配置 Mongo::MongoClient 和 MongoMapper 的日志记录01mongo.rb(使用 Mongo::MongoClient 进行完整日志记录) 02mongo.rb(将日志级别切换到 :info) 03mongo.rb(禁止日志记录) 04mongomapper.rb(为 ...
将上下文中的标签(以及这些标签的聚合)添加到您的MongoMapper模型中。 标签权重和分配方法使在数据存储中轻松找到实时分类热点。 Taggregator使用MongoDB的增量/减量( $inc / $dec )使用可选类型在上下文中保持...
死了,没有维护 联合 MongoMapper 和 GridFS 加入了文件上传的大爱。用法 声明插件,使用attachment方法制作附件。 class Foo include MongoMapper :: Document plugin Joint attachment :image attachment :pdfend...
此版本不再维护。 请查看以获取维护版本。 会众 Mongrations 旨在类似于 ActiveRecord 的数据迁移,除了不必担心架构更改,而是提供一种在必要时更改数据的方法。 示例:您在运行应用程序几周后决定添加时间戳,并...
2. **选择ODM(对象文档映射)库**:Ruby社区提供了多种ODM库来帮助开发人员更方便地使用MongoDB,例如MongoMapper、Mongoid等。 3. **建立连接**:使用Ruby驱动程序连接MongoDB数据库。 4. **CRUD操作**:通过Ruby...
书中会介绍如何在Ruby中构造复杂查询,并利用聚合框架进行数据处理和分析。 5. **数据安全**:讲解身份验证、授权和SSL连接,确保MongoDB数据库的安全性。 6. **性能优化**:讨论索引创建、查询优化、存储引擎选择...
MongoMapper(开启或关闭 MongoHQ) 设计 发送网格 充电 Sass(通过指南针) 摩卡 工厂女工 环境感知配置管理 大多数配置在 config/harmony.yml 您需要在 MongoHQ.com 上创建一个免费帐户,在 SendGrid.com 上创建一...
对于更复杂的查询,可以使用链式查询和聚合操作,这在MongoDB中非常强大,因为它支持灵活的数据结构。 在Rails应用中,我们还可以使用`form_for`和其他Rails助手来处理表单提交,以及`render`和`redirect_to`来管理...
v1.2 是 mongomapper 0.9.0 更新以支持新的插件系统 如果您使用的是 mongomapper 0.8.x 请使用 gem 1.1 版 用法 安装宝石 gem install mm - commentable 或者将它添加到你的 Gemfile gem 'mm-commentable' 然后将...
关于 在本地MongoDB或上运行的 , 和。 在。 安装 安装和 brew install mongo mongo > use test > db.addUser('test', 'test') ...export MONGOHQ_URL="mongodb://test:test@localhost:27017/test" ...
接下来,执行查询以查看`Project`集合中的所有文档: ```bash db.projects.find() ``` 至此,你已经成功地在Rails应用中配置并使用了MongoMapper连接MongoDB。在实际开发中,你可能需要根据项目需求扩展模型,添加...
安装¶↑$ gem install mongo_mapper文档兼容性)此外,还对MongoMapper进行了测试:Rails 3.2.x Rails 4.0.x Contributing&Development¶↑$ git clone https://github.com/mongomapper/mongomapper && cd ...
基于范围和引擎的,干净,功能强大,可自定义和复杂的分页器,适用于现代Web应用程序框架和ORM 产品特点 清洁 不全局污染Array , Hash , Object或AR::Base 。 易于使用 只需捆绑宝石,即可对模型进行分页。 无需...
PublicActivity public_activity在Rails 3.0-5.0中为ActiveRecord,Mongoid 3和MongoMapper模型提供轻松的活动跟踪。 简而言之:它记录了已更改或创建的内容,并使您能够执行PublicActivity public_activity为Rails ...
它支持以下ORM / ODM:activerecord mongoid mongomapper和以下模板引擎:rails_best_practices rails_best_practices是用于检查Rails代码质量的代码度量工具。 它支持以下ORM / ODM:activerecord mongoid ...
MongoMapper( ) 蒙古人() DataMapper( ) 只需将宝石添加到您的捆绑包中,您就可以出发了! 问题 通常,期望RESTful Rails控制器中的index操作比简单地返回给定模型的所有记录有更多的作用。 我们要求它...
它支持ActiveRecord,Mongoid和MongoMapper。安装在您的Gemfile中添加以下行: gem 'amistad'然后运行: bundle install用法请参阅以获取用法和友谊管理文档。测验有可用的rake任务,使您可以为三个rdbms运行...
已审核 审核(以前称为act_as_audited)是一个ORM扩展,用于记录对模型的所有更改。... 在以前的生活中,Audited与MongoMapper一起工作。 如果需要MongoMapper,请使用。安装将宝石添加到您的Gemfile中: gem "au