- An introduction to CouchDB
- Installing CouchDB
- Experimenting with CouchDB's web interface
- Integrating with Rails using ActiveCouch
- Integrating with Rails using RelaxDB
- Getting to scaffolding using RelaxDB
- Installing CouchDB from Subversion source code
- Trying out couchrest and topfunky’s basic_model
It occurs to me that before i can get Rails working with CouchDB it would be a good idea to actually install CouchDB! I'm going to try the download rather than the SVN source code because i'm clueless with SVN. So here goes. I am downloading version 0.8.1.
Edit to add: If you want to install from Subversion, see my later tutorial in Part 7: Installing CouchDB from Subversion source code
(more…)
Posted: September 7th, 2008
Categories:
couchdb
Comments:
View Comments.
I've had a really nice weekend: interesting and exciting, both of which are relative terms, i know!
Yesterday i made my own version of the Rails scaffold generator, featuring Low Pro to do as much as possible via AJAX. The JavaScript is completely unobtrusive, all done by Low Pro behaviours. It degrades gracefully for browsers without JavaScript. I have RSpec tests for the controller, too. It'll probably be available on GitHub soon … i just have to check with my boss that it's alright because we'll be using it at work.
Today i got a lot of chores done, which is a relief. Now i wouldn't be completely embarrassed if somebody were to spring a surprise visit on us! I wrote a review of RailsConf for our company blog, and i learnt more about CouchDB and made a decision to get Rails working with it.
I am grateful to have some friends on Twitter that i met at RailsConf, who are excited about CouchDB too. It feels as if i am getting involved in something that's going to be big and exciting, and i'm glad to be a part of it, even if it's just writing about my experiences. I am sure it must be possible to get Rails working on CouchDB … i just haven't managed to find any documentation to tell me how. I feel that is a space that i can fill! :)
Posted: September 7th, 2008
Categories:
couchdb,
ruby on rails
Comments:
View Comments.
- An introduction to CouchDB
- Installing CouchDB
- Experimenting with CouchDB's web interface
- Integrating with Rails using ActiveCouch
- Integrating with Rails using RelaxDB
- Getting to scaffolding using RelaxDB
- Installing CouchDB from Subversion source code
- Trying out couchrest and topfunky’s basic_model
This afternoon i decided that what the Internet really needs right now is some information about how to connect Ruby on Rails to a CouchDB database. So i'm going to have a go! I don't quite know what to do (which will probably become very clear!) so this will be a play-along-at-home experience. I'll blog about it in a series of posts, stopping whenever i get stuck. Hopefully i'll receive some feedback on whether what i'm doing is a good idea, and get some tips for what to try next.
This first post is just going to be an introduction, stating my interest in wanting to get this to work.
Some brief definitions
For those who don't know, here are some basic starting points …
Ruby is an open-source, interpreted, object-oriented programming language created by Yukihiro Matsumoto ('Matz').
Rails is a web application framework, created by David Heinemeier Hansson, written in Ruby, which guides us down an 'opinionated' route of best practices such as Model-View-Controller architecture, RESTful techniques, test/behaviour-driven-development. Thanks to its use of conventions rather than configuration, it is easy to get going quickly with Rails. However, it can be quite difficult to break out of the conventions, as we are going to try to do by using CouchDB as the database platform.
CouchDB, from what i can gather, is a document-oriented, RESTful, distributed database system written in Erlang.
Erlang is a programming language from Ericsson, which enables features such as concurrency, soft-real-time access, and fault-tolerance.
More technical details of CouchDB follow …
(more…)
Posted: September 7th, 2008
Categories:
couchdb,
ruby on rails
Comments:
View Comments.