advice upgrading to rails 3.1 from 2.3

Hey all, I have a fairly large application in Rails 2.3 I would like to upgrade the site to Rails 3.1 Now, the advice i need here is.. What is most likely a cleaner solution? Do i cd into my rails app, do a backup and rails new . over the top and go through and fix what is broken then? Or, would it be cleaner to start fresh, and move my older code into place on a file by file basis?

One more question. My existing app uses prototype, i will likely want to start in JQuery soon, but need both to work for a while, is this going to be a problem?


My team did a Rails 2.3 -> 3.0 upgrade in stages.

We duplicated the new AR syntax in a library and spent a few days converting our AR calls to the new syntax. After that was done, we bumped up the Rails version, put the new files in place, created new environment files, and switched our routes to the new syntax. That was really the bulk of it. Our 2.3 app was already setup to use Bundler, so we didn't have to worry about that.

The only thing that really bit us in the end was the switch to "escape html by default".

While you can do it in place, I think piecing it back together with a new app would be cleaner (after our experiences)

As for prototype/jquery,if you don't forget to use jQuery.noconflict and add in the prototype gem, it should work I think. Worst case scenario is that the UJS stuff doesn't work out of the box, but I never really used the ajax type calls in Rails.

Hey, thanks for this. I think we will start fresh too. We are doing this on a new server that is not in production yet, so we can make mistakes without it costing us too much. I appreciate your help.