26 ms·
Just out of interest, what drove you mad in 1.x? I've been working with it for the last few years and, by far, the most annoying aspect is sfForms, especially w
by Produce 15y ago
Just out of interest, what drove you mad in 1.x? I've been working with it for the last few years and, by far, the most annoying aspect is sfForms, especially when trying to do anything more than simple tasks (e.g. embedding forms).
- bad_user 15y agoI for one found the ORM extremely useless and even offensive in Symfony. sfForms was indeed unusable last time I tried it, not to mention everything was just too verbose (I find PlayFramework a lot more comfortable, even though it's a Java framework). Of course, I have been previously exposed to Django and its kick-ass ORM and to DBIx::Class from Perl, so my standards were pretty high.
- encoderer 15y agoEvery ORM I've ever used in PHP is junk aside from Doctrine. And Doctrine is only good if you commit fully to it. Tho that's true for most ORM's (I'm looking at you LINQ, you too, Active Record). The only other acceptable option IMO (in phpland) is the frameworks that implement such a thin and light ORM that it helps you with redundancies without enslaving you to their verbosity and tortured syntax. (Kohana, for example). But yes, Symfony in particular, using Propel ORM, is hideous. Edit: I suppose I didn't "bless" somebodies favorite ORM so clipped a downvote. You could just give a counterpoint instead. And really, I did forget about ZendDb, which wasn't all that bad but I never really used it much.
- apinstein 15y agoWhat's so bad about the PHP ORMs? I am curious. I know Propel has improved significantly, and Doctrine 2 as well. Do you have any specific complaints?
- SolarUpNote 15y agoPropel is completely different as of 1.6. It doesn't really use the "Criteria" objects any more. (which is probably what they're referring to) It's much simpler now: articles = ArticleQuery->where(column = ?, val)->groupBy(column)->limit(10)->find() I like it, but it's still very resource-heavy.
- encoderer 15y agoThere are too many unimpressive ORM projects. There's a hundred PHP frameworks and half of them decide to roll their own ORM rather than use and contribute to an existing project. So you're left with a lot of unsophisticated systems. Doctrine (PHP), DataMapper (Ruby), SqlAlchemy (Python), LiNQ (.Net), Hibernate (Java). I've used all of these a great deal (except Hibernate, I've not done all that much Java). All of these projects are sophisticated, complex, impressive. Propel? CakePHP ORM? Or just search php orm -doctrine -propel and look at the 3 dozen results. These are junk. I'll stand by that assertion. Not because they're PHP, but because they were started often as a part of a larger framework without any respect paid to the fact that an ORM is a very very hard problem to solve.