On fera la migration vers Rails 3.1 + Ruby 1.9 juste après la sortie 1.0 (du
genre 1.2). La seule partie qui risque d'être compliquée, c'est la
réécriture du framework de tests mais c'est 3 petits fichiers.

Concernant couchdb, j'avais investigué la chose, mais je crois que c'est pas
possible avec notre cahier des charges:

1. multi-site (pas de modification de la DB par site)
2. document (enregistrement en json,yaml ou marshal)
3. relationnel (champs indexables [1], indexes consolidés [2])

Le troisième point permet d'écrire des requêtes SQLiss du type:

contracts from contacts where title like "%{params[:f]}%" in site

Ou (exemple réel pour trouver des contacts au sein d'une liste de contrats):

contacts where #{params[:tag].blank? ? "1=1" : %Q{tag =
"#{params[:tag]}"}} from contracts where contact.contact_search like
"%#{params[:f]}%" and #{query_parse(params[:q])} limit 20 paginate p


"query_parse" transforme des params du type {"contact.postal_code" =>
"1306", "control.ordered_on" => "<1.5.2010"} en "contact.postal_code = 1306
and control.ordered_on <1.5.2010".

Toute cette machinerie construit du SQL au final:
https://gist.github.com/994975

Je pense pas que ceci est réalisable sans une base de donnée
relationnelle...

;-)

Gaspard

[1] property index http://zenadmin.org/en/zafu/page682.html
[2] scope index http://zenadmin.org/en/blog/post757.html

2011/5/27 did <[email protected]>

> Bravo Gaspard !
> Sauf que maintenant, il y a Rails 3.1 ;-)
> Sinon, pourquoi tu n'as pas migre directement vers couchdb ou
> mongodb ?
>
>  Did
>
> --
> Vous avez reçu ce message, car vous êtes abonné au groupe "Railsfrance" de
> Google Groups.
> Pour transmettre des messages à ce groupe, envoyez un e-mail à l'adresse
> [email protected]
> Pour résilier votre abonnement envoyez un e-mail à l'adresse
> [email protected]
>

-- 
Vous avez reçu ce message, car vous êtes abonné au groupe "Railsfrance" de 
Google Groups.
Pour transmettre des messages à ce groupe, envoyez un e-mail à l'adresse 
[email protected]
Pour résilier votre abonnement envoyez un e-mail à l'adresse 
[email protected]

Répondre à