I'm looking for design guidance for a new project. I'd like to move beyond CodeIgniter, and I've been considering Kohana, FuelPHP and Laravel as candidates.
A critical factor for me is database portability. I've also not used ORM before but I'm open to doing so as long as I can still have database portability.
However, two Fuel roadmap items caught my attention:
- "Replace current Query Builder"
- "The ORM will be removed from the default 'package' and put into legacy mode"
What's the future for the query builder and ORM in FuelPHP? If I settle my design now will I soon need to recode models when upgrading Fuel?
How do you recommend starting out the data layer design for a new project at the moment?
In what ways is the Fuel data layer different to the CodeIgniter, Kohana and Laravel data layers and how will this change in future?
The current QB is ported from Kohana and improved slightly. It's very MySQL oriented, which is an issue when it comes to database portability. Which is why we're going to replace it with a new one already build, called 'cabinet'.
Re item 2:
That is an outdated statement, and no longer true. Currently the ORM is included in the base package, and that will change, because we want to give you the choice of ORM, a bit like the parser package does with template engines. The current ORM will be, and will remain, one of the choices.
If you use ORM, the change of QB engine will be transparent for you. Also, no model changes are expected unless you have custom DB queries in your models.