Hi all,
As many may have noticed, dbdesigner2cake was made stable and many of the fundamental features are already implemented.
Beside the basic homework (code organisation and documentation), I have few ideas for dbdesigner2cake 1.2 branch:
- Reverse Engineering: It would analyse Model classes and create a DBDesigner XML file.
- Automated Scaffolding: It would watch a XML file for changes, whenever it realised a file change it would automatically re-scaffold the application.
- Non-destructive scaffolding: It would modify Model classes thus preserving the developer created methods.
Another idea I had was a modified version of app_model.php that would parse DBDesigner XML file on fly, simplifying the Model Classes files. An example, instead of this:
<?php
class Post extends AppModel {
var $name = “Post”;
var $hasMany = array(‘Tag’ => array(‘className’ => ‘Tag’));
var $belongsTo = array(‘Subject’ => array(‘className’ => ‘Subjects’));
function yetAnotherMagicalMethod(){
…
}
}
?>
It would be:
<?
class Post extends DBDesignerModel {
var $name = “Post”;
//Relationships would be automagically loaded – and cached.
function yetAnotherMagicalMethod(){
…
}
}
?>
Bye!