阅读更多

1顶
0踩

编程语言

原创新闻 Supermodel: Ruby in-memory model

2010-03-29 11:27 by 副主编 just_cool 评论(1) 有3443人浏览


 Supermodel是一个新的类库,由 Alex Maccaw创建。使用Rails 3.0 ActiveModel类库在In-Memory Database中提供 ActiveRecord-esque。

 

 

示例:

 

  require "supermodel"

  class Test < SuperModel::Base
  end

  t = Test.new
  t.name = "foo"
  t.save #=> true

  Test.all
  Test.first
  Test.last
  Test.find_by_name('foo)
你可以使用一个random ID,而不是 object ID:
  
  class Test < SuperModel::Base
    include SuperModel::RandomID
  end
  
  t = Test.create(:name => "test")
  t.id #=> "7ee935377bb4aecc54ad4f9126"
  
 marshal objects to disk on startup/shutdown:
  
  class Test < SuperModel::Base
    include SuperModel::Marshal::Model
  end
  
  SuperModel::Marshal.path = "dump.db"
  SuperModel::Marshal.load

  at_exit {
    SuperModel::Marshal.dump
  }
  
你可以使用Redis,需要使用gem形式进行安装:
  require "redis"
  class Test < SuperModel::Redis
    attributes :name
    indexes :name
  end
  
  Test.find_or_create_by_name("foo")

点击查看详情:http://www.rubyinside.com/supermodel-activemodel-powered-simple-in-memory-database-3172.html
来自: rubyinside
1
0
评论 共 1 条 请登录后发表评论
1 楼 hiscaler 2010-03-29 15:19
[b][/b]

发表评论

您还没有登录,请您登录后再发表评论

相关推荐

  • 不用遍历的方式在对象集合list中抽取属性集合转化为map或list

    首先新建一个实体类Person @Data public class Person { /** 编码 */ private String code; /** 名字 */ ...实例化三个对象放入list集合中 public static void main(String[] args) { Person pe

  • Java中如何遍历Map集合对象呢?

    Java中遍历Map集合对象的示例分享

  • JS遍历map集合以及map对象

    js中map对象简单实例 es6提供一个对象Map,其功能类似于java中的Map, 下面是java中的Map和js中的Map的简单对比: js中的Map.set()相当于java中的Map.put...遍历MAP对象 var map = [{ key : "百度", value : "李彦宏

  • js遍历map(js遍历map对象)

    javascript怎么遍历map varmap=newHashMap();map.put(a,1);map.put(b,2);遍历:varkey=map.keySet();for(variinkey){alert(map.get(key[i]));}注:js中使用map,要先导入一个HashM...

  • Javascript遍历map集合以及map对象

    js中map对象简单实例 es6提供一个对象Map, 其功能类似于java中的Map, 下面是java中的Map和js中的Map的简单对比: js中的Map.set()相当于java中的Map.put(), ...遍历map对象 var map = [{ ...

  • java 高效遍历map_精髓!Java中遍历Map集合的五种方式

    这篇文章主要给大家介绍了关于Java中遍历Map集合的5种方式,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面一起学习学习吧。方式一 通过 Map.keySet 使用 iterator...

  • vue遍历Map集合

    vue使用v-for遍历Map对象 vue循环遍历List,Map,Array

  • js map遍历 修改对象里面的值_遍历Map集合、修改Map集合中的value值

    Map集合是基于java核心类——java.util中的;Map集合用于储存元素对,Map储存的是一对键值(key和value),是通过key映射到它的valuevalues(): 是获取集合中的所有的值----没有键,没有对应关系。KeySet(): 将Map中...

  • Map集合遍历的2种方法(不能遍历Map集合,都是通过遍历Set集合)

    Map集合遍历键找值方式 键找值方式:即通过元素中的键,获取键所对应的值 操作步骤与图解: 1.获取Map集合中所有的键,由于键是唯一的,所以返回一个Set集合存储所有的键 2.遍历键的Set集合,得到每一个键 3.根据键...

  • vue遍历map对象

    遍历方法:两次v-for &lt;view v-for="(item,key) in rechargeTicketRule" :key="key" class="uni-dialog-content clearfix"&gt; &lt;view class="box" v-for="data in item"&gt; &lt;/view&gt; &lt;/view&gt; ...

  • Java中如何遍历Map中的value呢?

    遍历Map中的value的方法分享

  • forEach(BiConsumer action)方法遍历Map集合

    forEach(BiConsumer action)方法遍历Map集合 直接上代码: package com.sgl; import java.util.HashMap; public class Test { public static void main(String[] args) { //创建HashMap对象 HashMap&lt;Object...

  • jQuery 遍历map()方法详解

    map() 把每个元素通过函数传递到当前匹配集合中,生成包含返回值的新的 jQuery 对象。 二、语法 .map(callback(index,domElement)) 三、详细说明 由于返回值是 jQuery 封装的数组,使用 get() 来处理返回的对象以...

  • MAP集合的遍历方式

    集合的遍历方式以及遍历删除操作方式

  • 什么是Map集合?如何遍历Map?

    Map集合的特点 1、map是一个双列结合,一个元素包含两个值(key,value) 2、mao集合中的元素,key和v...

  • Iterator迭代器遍历Map集合

    keySet()方法需要先将Map集合中所有的键对象转换为Set单列集合,接着将包含键对象的Set集合转为Iterator接口对象,然后遍历Map集合中所有的键,再根据键获取相应的值 package com.sgl; import java.util.HashMap; ...

  • 【Linux设备管理】从devfs到udev:设备文件系统演变及其关键技术对比分析了Linux设备管理

    内容概要:本文详细介绍了Linux设备文件系统从devfs到udev的演变过程。devfs作为Linux 2.4时代的创新,通过引入内核空间的设备管理机制,简化了设备文件的创建和管理,但其存在稳定性问题和灵活性不足的缺点。udev则运行在用户空间,利用内核发送的热插拔事件和sysfs提供的信息,实现了设备文件的动态管理和高度自定义。它不仅解决了devfs的问题,还提供了更灵活、高效的设备管理方式,成为现代Linux系统中的主流选择。文章还探讨了两者在不同应用场景中的优劣,并展望了未来Linux设备管理的发展方向,强调了对新型设备的支持、虚拟化和容器环境的兼容性以及智能化的用户体验。 适合人群:对Linux系统有一定了解,特别是对设备管理感兴趣的开发人员、系统管理员和技术爱好者。 使用场景及目标:①理解Linux设备管理的历史和发展趋势;②掌握devfs和udev的工作原理及其在不同场景下的应用;③学习如何编写udev规则文件,实现设备的个性化管理和优化配置。 阅读建议:本文内容较为技术性,建议读者先了解基本的Linux设备管理概念。在阅读过程中,重点关注devfs和udev的区别和优势,并结合实际应用场景进行思考。对于udev规则文件的编写,可以通过实践和调试加深理解。

  • 三维路径规划中RRT与APF融合算法及其路径平滑处理

    内容概要:本文详细介绍了将快速随机树(RRT*)和人工势场(APF)相结合用于三维空间路径规划的方法。首先阐述了两种算法的工作原理,特别是APF如何通过引力和斥力向量引导RRT*的节点扩展,使得路径规划更加高效且能够有效避开障碍物。接着讨论了路径平滑处理的具体实现方式,如利用贝塞尔曲线进行路径优化,确保最终路径不仅平滑而且不会发生碰撞。此外,文中还提供了具体的代码片段来展示各个模块的功能,包括APF核心算法、RRT*扩展逻辑、碰撞检测以及路径平滑等。同时提到了一些潜在的改进方向,如引入速度场因素、采用不同的平滑算法等。 适合人群:对机器人路径规划、无人驾驶等领域感兴趣的开发者和技术爱好者。 使用场景及目标:适用于需要在复杂三维环境中进行高效路径规划的应用场合,如无人机飞行、自动驾驶汽车等。主要目的是提高路径规划的速度和质量,使生成的路径更加平滑、安全。 其他说明:本文不仅提供了理论解释,还有详细的代码实现,便于读者理解和实践。对于希望深入了解RRT*和APF融合算法并应用于实际项目的读者来说是非常有价值的参考资料。

  • HikvisionIVMSGetShell-main.zip

    HikvisionIVMSGetShell-main.zip

Global site tag (gtag.js) - Google Analytics