Note: Marco's Component Maker is NOT a tool for beginners.
** Jan 13, 2010 - v 22.214.171.124
* Joomla! 1.6 support
* generation of multiple translation files
* no more use of global vars ($mainframe, $option) both J1.5 and J1.6 code
* minor code improvements
** Dec 29, 2010 - v 126.96.36.199
* more input renderer types (string, text area, rich text editor, calendar, select list, boolean radio button)
* field by field rendering control
* support for translation files
* selection of fields for list/editing
* selection of searchable fields
* basic support for related tables (foreign keys)
* full code generation for select input
* code generation for related table
** Jun 12, 2010 - v 188.8.131.52
* no more mandatory fields in table (id, ordering,published)
* automatic recognition of primary key (no need that there is `id`, but must be numeric)
* generation of submenu for navigation between controllers, no more need to add navigation manually
* back end table list with sortable fields list & filter
* automatic rendering based on DB field type (input/textarea/rte/calendar)
* input validation, based on DB field type, before saving data
* configuration file management for generated component
* more security checks
(see web site for previous releases)
I look forward to the implementation of all the things you have listed as "not implemented yet".
Also, it would be nice if there was some sort of support forum or email for questions and issues.
There are a few tiny little "bugs" here and there, such as the use of short tags in the JHTML calendars and the menu items for each admin view being overwritten with the controller name but five minutes to put those issues to rest in my component was IMMENSELY outweighed by the hours it saved me! I hope this tool continues to be actively developed. An easier DB config screen for quickly setting up new projects would be nice to have some time in the future too.
Thanks again for an AWESOME utility!
Just so you know what to expect with 1.5
There's a bug when storing records in some cases which can be fixed by editing the model class ( call to getError )
The completed component doesn't support enum fields, it will render it as a text box instead of select boxes as you'd expect.
The completed component required joomla prefixes on the tables, I had some custom tables that lacked prefixes.. while it let me select the table, the component still added "#__" in the queries.. that's fixable by editing the table class and the model classes..
Otherwise, the software is great and I'm sure the dev will fix the known issues =)
thank you for bug report.
Added to kwnown bugs ;)
You can easily fix it by replacing line 98 in templates/beModel.php with:
$this->setError( $row->_db->getErrorMsg() );
2. support for enum fields
may be in a next release, but it is not a priority: enum fields are not portable, so I never use them (sorry).
Joomla coding standard requires table have the prefix, so this will not be changed.
Then I tried this one, enter your information, select the predone database tables.. and bang.. one program ready for configuration.
I know its not the only one out there, but the simplicity is beyond awesome.
I am developing a commercial component with over 40 tables, and 600 fields, this baby hammered out the skeleton of the component with forms, layouts, lists, views (front and back) in seconds.
YES, you will need to tidy the code, but the boring bit is done for you. I have saved maybe 3 months work with this gem!
My only issue with the program is the that the calender control didnt appear properly in forms, but easily sorted.
My suggestions for the future.
1 - Instead of an (edit) button just make the name link to edit record like most joomla components (easily done with a site wide find - replace)
2 - Publish should be a radio button, not a text field (sorted same way)
3 - Sort by option on the fields in table views.
4 - (a real wish list, but I would happily pay for this as a commercial plugin) a generated search plugin that searches tables based on a 'searchable' tick box during the creation stage.. or just the entire of the table specified in the component itself.
5 - Optional 'forms' for the front end as well
Utterly BRILLIANT.. Thanks
All you need to do is download the MySQL connector from MySQL.com, install it, and you are ready to rock.
It generates a fully Functional MVC compliant structure with Controllers, Models, Views, Tables etc. It builds a basic CRUD for your component in seconds. (As fast as you can click Next...)
In the next version I would love to see the ability to edit the field types (i.e selecting dropdown as field type etc).
Marco, Good work, well done. I am building a major commercial component based on this, and you will get some of my proceeds when I start selling. You are that good.