L
L
La2ha2012-11-12 05:37:29
CMS
La2ha, 2012-11-12 05:37:29

Code generator, MySQL tables, files and admin panel. Are there solutions or worth doing?

Quite often you have to write for each module, the code that you wrote in the previous modules, slightly changing it, most often you have to do this when creating an administrative panel (form validation, pagination, sorting, search by module).

And all these actions are quite standard, and it would be possible to make the system such a kind of dev-admin panel for the framework, in which, using the graphical interface, it would be possible to quickly and simply make the frame of the module.

For example. You need a blog module, with a title, introductory text, full text, and a main image and its thumbnail.
We go into the dev-admin from the list of pre-prepared options for data types (text, pictures, date, files, etc.) select those that we need for this module, set properties for each of them (required or not, valid file types , text size large or small, and other validation options), specify links to other tables if necessary, and along the way we can create them. We press OK. And we have created a table with the fields we need, the admin code for managing this table, and a module preparation for the fronted (folder, files, class declarations in them and a constructor).

After that, it remains to deal with exactly what is more or less individual - the frontend. And correct the admin code if necessary.

I didn't find a really good out-of-the-box solution in Yii - Giibut it's a bit different than phpMyEdit - it looks scary, old and inconvenient. And in my opinion, the best Bonfire solution - but it seemed to me damp because of the errors that popped up in the process of creating the module, and not very convenient.

The question is, is there any solution that can implement the idea? And how interesting is this decision to the public? Because I have an idea to take and finish Bonfire or do something of my own and share it.

Answer the question

In order to leave comments, you need to log in

5 answer(s)
N
Nikolai Vasilchuk, 2012-11-12
@Anonym

As far as I understand you, symfony has it all.
Yes, and in any CMS, in the same Drupal.

R
rakot, 2012-11-12
@rakot

Gii in Yii is just that, only the one that comes with the framework generates a somewhat inconvenient CRUD.
I expanded it for myself according to the principle of postfixing the fields, namely:
If the field name ends with:
_date - then there will be a date field in the admin
panel _datetime - date with time
_image - the field for uploading an image to the apploads folder on the controller,
well, I decompose enum into a select.
Saves a lot of time compared to the standard Gii.

C
cat_crash, 2012-11-12
@cat_crash

There is a proprietary solution from one Russian studio. Its meaning is as follows:
-There is XML, which describes the fields, types AND RELATIONS with other tables.
- There is a set of tools (XSLT templates) that convert the finished XML into PHP scripts, which are then connected to the CMS
. Alas, the project was written under php4 and is already obsolete and has not been updated.
A documentary that will give more insight into the principle here www.dropbox.com/s/168g5cknecgre4f/Developer.doc
Here is a sample of a finished XML kapital.by/admin/create/config.xml

A
Alexander Kozhevnikov, 2012-11-13
@bethrezen

For yii, there is yii-ycm , but it also does not solve all problems.

Z
zvzz, 2014-02-28
@zvzz

Did you find any solution for fast and high-quality building of a data-oriented admin panel/web application?
We made our own, as usual - powerful, beautiful, and it's enough to say "abracadabra" how it will analyze the database, build a complete application on configs, make api, build grids, maps, lists, connections, validations, roles and almost collaborative editing. Custom screenshots are created with a wave of the hand and a one-page json.
But at some point it became clear that it is too expensive for us to support this super for ourselves, and we either have to take something from the shelf, open or closed, but tested by thousands of people, or drive our product to the market state (and this development, marketing and support costs), or give it to open source - if there is a demand, there will be those who will help to finish it.
Thanks for the answer.

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question