首页
/ Couchbase Ruby客户端技术文档

Couchbase Ruby客户端技术文档

2024-12-27 09:12:25作者:齐添朝

1. 安装指南

Couchbase Ruby客户端库已经经过测试,兼容MRI 3.1、3.2和3.3版本。支持的平台包括Linux和MacOS。

要安装Couchbase Ruby客户端,您可以将以下内容添加到应用程序的Gemfile文件中:

gem "couchbase", "3.5.4"

然后执行以下命令安装:

$ bundle install

或者,您也可以单独安装:

$ gem install couchbase

对于某些平台,我们预先编译了二进制包。在某些情况下无法使用二进制包时,可以传递--platform=ruby参数给gem install命令(或者检查Bundler的specific_platformforce_ruby_platform选项)。在后一种情况下,请参阅开发部分了解构建依赖。

2. 项目的使用说明

以下是使用Couchbase Ruby客户端进行数据操作的基本步骤:

require "couchbase"
include Couchbase # 为简洁起见,包含Couchbase模块

# 初始化库
cluster = Cluster.connect("couchbase://127.0.0.1", "Administrator", "password")

# 打开bucket和collection以进行数据操作
bucket = cluster.bucket("my_bucket")
collection = bucket.default_collection

# 更新或插入文档
res = collection.upsert("foo", {"bar" => 42})
res.cas
#=> 22120998714646

# 从集合中检索文档
res = collection.get("foo")
res.cas
#=> 22120998714646
res.content
#=> {"bar"=>42}

# 删除文档
res = collection.remove("foo")
res.cas
#=> 47891154812182

# 从集合中获取前3个酒店数量最多的城市
res = cluster.query("
          SELECT city, COUNT(*) AS cnt FROM `travel-sample`
          WHERE type = $type
          GROUP BY city
          ORDER BY cnt DESC
          LIMIT 3",
        Options::Query(named_parameters: {type: "hotel"}, metrics: true))
res.rows.each do |row|
  p row
end
#=> {"city"=>"San Francisco", "cnt"=>132}
#   {"city"=>"London", "cnt"=>67}
#   {"city"=>"Paris", "cnt"=>64}

3. 项目API使用文档

关于API的详细信息可以通过yard库生成。以下是如何生成API参考的步骤:

$ gem install yard

以下是生成特定git标签的API引用的步骤:

$ rake doc

API参考可以通过网页浏览器访问(其中VERSION是SDK的当前版本):

$ firefox doc/couchbase-ruby-client-VERSION/index.html

4. 项目安装方式

安装Couchbase Ruby客户端的详细步骤如下:

  • 将Couchbase Ruby客户端的依赖项添加到 Gemfile 文件中。
  • 使用 bundle install 命令或 gem install 命令安装依赖项。

对于编译和打包步骤,请参考以下命令:

$ bundle exec rake compile

运行测试:

$ bundle exec rake test

进行代码风格检查:

$ bundle exec rubocop

构建和安装Ruby gem:

$ gem build couchbase.gemspec
$ gem install couchbase-VERSION.snapshot.gem

在完成以上步骤后,您就可以在项目中使用Couchbase Ruby客户端进行数据操作了。

热门项目推荐
相关项目推荐

项目优选

收起
open-eBackupopen-eBackup
open-eBackup是一款开源备份软件,采用集群高扩展架构,通过应用备份通用框架、并行备份等技术,为主流数据库、虚拟化、文件系统、大数据等应用提供E2E的数据备份、恢复等能力,帮助用户实现关键数据高效保护。
HTML
74
55
openHiTLSopenHiTLS
旨在打造算法先进、性能卓越、高效敏捷、安全可靠的密码套件,通过轻量级、可剪裁的软件技术架构满足各行业不同场景的多样化要求,让密码技术应用更简单,同时探索后量子等先进算法创新实践,构建密码前沿技术底座!
C
50
39
HarmonyOS-ExamplesHarmonyOS-Examples
本仓将收集和展示仓颉鸿蒙应用示例代码,欢迎大家投稿,在仓颉鸿蒙社区展现你的妙趣设计!
Cangjie
258
66
mybatis-plusmybatis-plus
mybatis 增强工具包,简化 CRUD 操作。 文档 http://baomidou.com 低代码组件库 http://aizuda.com
Java
20
0
Cangjie-ExamplesCangjie-Examples
本仓将收集和展示高质量的仓颉示例代码,欢迎大家投稿,让全世界看到您的妙趣设计,也让更多人通过您的编码理解和喜爱仓颉语言。
Cangjie
177
41
advanced-javaadvanced-java
Advanced-Java是一个Java进阶教程,适合用于学习Java高级特性和编程技巧。特点:内容深入、实例丰富、适合进阶学习。
JavaScript
399
103
RuoYi-VueRuoYi-Vue
🎉 基于SpringBoot,Spring Security,JWT,Vue & Element 的前后端分离权限管理系统,同时提供了 Vue3 的版本
Java
168
37
RuoYi-Cloud-Vue3RuoYi-Cloud-Vue3
🎉 基于Spring Boot、Spring Cloud & Alibaba、Vue3 & Vite、Element Plus的分布式前后端分离微服务架构权限管理系统
Vue
26
18
hyperionhyperion
仓颉语言实现的TCP通信框架,支持添加自定义编解码器,积木式添加IoFilter处理入栈出栈消息。仓颉redis-sdk和activemq4cj项目使用了该框架。
Cangjie
113
16
CangjieCommunityCangjieCommunity
为仓颉编程语言开发者打造活跃、开放、高质量的社区环境
Markdown
892
0