I’ve found that Rails is really easy to create CRUD. Create/retrieve/update/delete databases is really easy. You set up the database, run a ruby command at the command line, and you get the basic web forms you need to create, list, update, and delete records in a database. Then, you dress up the html with CSS and you’re on your way.
Rails is a great way to easily create database applications on the web.
Until you need a relational database.
Figuring it out relational databases are hard, primarily because you have to: 1) name the relationships correctly, and 2) tell ruby about the relationships. I haven’t figured all this out yet and I have felt really frustrated seeing as single tables are easy.
I thought it was me, but then I found Rails Ridiculous Restrictions, Rant, which outlines the problem with Rails nicely. Basically, the ranter’s argument is that Rails should be smart enough to figure out the relationships without having the programmer tell it what those relationships are. And I agree.