Hi, list.
While I am happy to be learning Couch for a new project, I am still
unsure about some tricks that I used with Django and Rails, such as data
migration:
For example, suppose I change my code and instead of using a string
timestamp in my documents, I would prefer a hash with "day", "month",
and "year" keys. When I deploy the new code into production, obviously
I want the data structures to change for all existing documents.
So my question is: What is the preferred or recommended method to do
this? So far, the only thing I can think of is to write some client
code to do the following:
1. Fetch _all_docs
2. For each document that requires changing, modify it
3. Either PUT the new documents up one by one, or POST them to
_bulk_docs, depending on the situation.
This solution doesn't strike me as particularly horrible, but I was
wondering if there is a better way, perhaps something server-side. I
have looked around couchdb-python, couchrest, and couchapp but i don't
think see this kind of code. (Maybe it "smells" too Railsy, I don't
know.) Anyway, if my approach is reasonable, then I'll be happy to send
a patch/GitHub pull request upstream to couchapp if would help others.
--
Jason Smith
Proven Corporation
Bangkok, Thailand
http://www.proven-corporation.com