Sha256: 69a3a950659abe45cf102930122286221621a487e360abd061041630535ed659

Contents?: true

Size: 1.27 KB

Versions: 1

Compression:

Stored size: 1.27 KB

Contents

#### {% title "CouchDB – Ruby" %}

# CouchDB – Ruby

## Korzystamy z gemu *rest-client*

Przykład z Wiki: [collation](http://wiki.apache.org/couchdb/View_collation):

    :::ruby
    # file: collseq.rb
    require 'rubygems'
    require 'restclient'
    require 'json'

    DB="http://127.0.0.1:5984/collator"
    RestClient.delete DB rescue nil
    RestClient.put "#{DB}",""
    (32..126).each do |c|
      RestClient.put "#{DB}/#{c.to_s(16)}", {"x"=>c.chr}.to_json
    end
    RestClient.put "#{DB}/_design/test", <<EOS
    {
      "views":{
        "one":{
          "map":"function (doc) { emit(doc.x,null); }"
        }
      }
    }
    EOS
    puts RestClient.get("#{DB}/_design/test/_view/one")

## Couchrest & irb

    :::ruby
    db = CouchRest.database!("http://localhost:5984/my_db")
    attr = { "imie" => "Włodek", "login" => "wbzyl", "wiek" => "18" }
    result = db.save_doc(attr)

Dalej

    :::ruby
    result['id']
    record = db.get(result['id'])
    record['_rev']
    record['login'] = 'matwb'
    result = db.save_doc(record)
    record = db.get(result['id'])
    db.delete_doc(record)


Zob. [Contacts](http://gist.github.com/112109),
[blog J. P. Wood’a](http://johnpwood.net/tag/couchrest/),
[Rails Wiki: CouchDB](http://wiki.rubyonrails.org/database-support/couchdb).

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
nosql-tutorial-0.1.1 lib/views/couchdb-ruby.rdiscount