Ruby Forum Rails France > rails 2.1 tentative de migration

Posted by guillaume belleguic (Guest)
on 03.06.2008 18:26
(Received via mailing list)
Bonjour,
Nous développons un gros projet en rails 2.0.2...

Il nous reste encore plusieurs mois de développement et il nous semble 
donc
important de suivre les évolutions de rails...

Première tentative pour passer en rails 2.1 et beaucoup de refactoring 
sont
à prévoir (les bidouilles d'hier ne sont plus les bidouilles 
d'aujourd'hui
:-)

En revanche, une grosse inquiétude au niveau des render...

explication :

avec deux modèle :

class Address::Firm
   has_many :phones
end

class Address::Phone
  belongs_to : firm
end

dans la vue j'ai show de firm je fait :

<%= render :partial =>  @firm.phones%>

avec la version précédente il cherche la vue
"/address/phones/_phone.html.erb", avec 2.1 il cherche
"/address/address/phones/_phone.html.erb"

et là rien ne vas plus..

Peut être que certains d'entre vous ont rencontré ce problème et on peut
être trouvé des solutions ??? merci

Sinon nous attendrons de voir du côté des patchs et des versions
correctives...
Posted by Tony Chauveau (kusanar)
on 03.06.2008 21:28
guillaume belleguic wrote:
> avec la version précédente il cherche la vue
> "/address/phones/_phone.html.erb", avec 2.1 il cherche
> "/address/address/phones/_phone.html.erb"
> 
> et là rien ne vas plus..
> 
> Peut être que certains d'entre vous ont rencontré ce problème et on peut
> être trouvé des solutions ??? merci
> 
> Sinon nous attendrons de voir du côté des patchs et des versions
> correctives...

C'est bizarre cette erreur, je viens de migrer une application vers
rails 2.1 et je n'ai pas rencontré ce problème.
Par contre j'ai procédé differemment. J'ai créé un nouveau projet Rails
2.1 sur lequel j'ai importé mon projet (j'ai juste recréé les migrations
pour avoir la nomenclature de rails 2.1)
Posted by Fabien Jakimowicz (Guest)
on 04.06.2008 17:15
(Received via mailing list)
2008/6/3 Tony Chauveau <list-incoming@andreas-s.net>:
>>
>> Sinon nous attendrons de voir du côté des patchs et des versions
>> correctives...
>
> C'est bizarre cette erreur, je viens de migrer une application vers
> rails 2.1 et je n'ai pas rencontré ce problème.
> Par contre j'ai procédé differemment. J'ai créé un nouveau projet Rails
> 2.1 sur lequel j'ai importé mon projet (j'ai juste recréé les migrations
> pour avoir la nomenclature de rails 2.1)

Il semble y avoir pas mal de changements en 2.1 et des petites choses
encore cassées. Si par exemple vous avez une application qui n'utilise
pas de base de données et que vous désactivez le framework
ActiveRecord dans l'environnement, vous ne pourrez migrer sur 2.1 : il
y a une dépendance obligatoire due à ActionPack, même en désactivant
ce dernier ... 
http://rails.lighthouseapp.com/projects/8994/tickets/331-2-1-stable-branch-broken#ticket-331-1

De plus, ActiveRecord à été grandement modifié au niveau de l'eager
loading : un include avant conduisait à un left join et ne générait
qu'une requête. Maintenant une première requête est faite pour
récupérer les objets parents puis une autre est faite par association
inclue en précisant les id à charger dans une conditions IN.
J'utilisais les include pour avoir des conditions, mais il faut
maintenant utiliser un joins pour préciser les jointures à faire. Cela
réduit certe le nombre de colonnes envoyées si jamais on inclue 15
associations, mais cela demande pas mal de modifications de code ...
--
http://fabien.jakimowicz.com