Diese RAD-Frameworks können einem zwar wie eine Zwangsjacke vorkommen, aber auch die kann man anpassen, sowohl im Programmcode als auch im Frameworkcode (fast alles kann man in den Programmcodedateien machen, wenn man Programmiersprachen benutzt, die das spätere Ändern von Klassen unterstützen).
Die RAD-Frameworks nehmen einem viel ab, wenn man dieses viele aber noch so haben möchte, wie man will, dann muss man, je nach Funktion und Änderung, manchmal mehr Zeit aufbringen, als fürs Neuschreiben.
Sie sind außerdem nicht nur darauf ausgerichtet, dass das Coden schneller und einfacher wird, sondern der Code auch einfach zu lesen ist, selbst für jemanden, der die verwendete Sprache nicht gelernt hat.
Rails auf Ruby Enterprise Edition, Apache mit Passenger (aka mod_rails) und einem guten Server ist gar nicht mal mehr so lahm. Für private Homepages reicht's auf jeden Fall.
Ich würde Rails empfehlen, kauf' dir ein gutes Ruby-Buch (Programming Ruby ist das Standardwerk, zwar auf Englisch, aber das sollte kein Problem darstellen) und ein gutes Rails-Buch (wenn du schon PHP kannst, empfehle ich Rails for PHP Developers) - kann man beides gleichzeitig lesen.
Anders als andere Frameworks hat Rails jedoch - soweit ich weiß - keinen Admin-Generator. Das Scaffolding ist so ziemlich das kargste aller Frameworks. Vielleicht gibt's ein Admin-Generator-Plugin, weiß ich nicht, ich schreibe Backends gerne selber. Man kann sich das Scaffolding aber auch in Codedateien schreiben lassen und dann nach Belieben verändern, ein wenig Arbeit nimmt einem das schon ab.
Wer sagt, dass solche Frameworks nichts mehr mit Programmieren zu tun haben: Man kann damit selbstverständlich auch komplizierte Webapplikationen schreiben. Die verbieten einem nicht, Controller größer als 100 Zeilen zu schreiben
Ach übrigens, Ruby hat Ähnlichkeiten mit Python, für einen Python-Programmierer sollte es nicht zu schwer zu erlernen sein.
Django habe ich mir übrigens nicht angeguckt, deswegen kann ich dazu nichts sagen, vielleicht wäre es ja besser für dich.