简体   繁体   中英

Symfony Mapping in Doctrine without Annotations or XML Files

a customer has an existing database. The schema is often changed within the database itself (eg he adds a new column).

My task is to develop an admin area with symfony that automatically reacts on table schema changes without modifying the application code. Eg the customer adds a new column to table "MyEntity", and the application automatically generates a new column in the accordingly list view.

My approach is to dynamically map the table columns to the Entity class so that ALL Attributes and ALL Getters/Setters are generated dynamically from the table schema.

So is it possible to map the table columns in a Doctrine Entity without the use of Annotations or XML Files.

Something like:

class MyEntity{

   public function generateMappingFromSchema($sTableName){...}

}

Please don't do that. Doctrine was not designed for such use case.

There is a library though you should check https://github.com/laravel-doctrine/fluent which basically is a mapping driver that allows you to manage your mappings in an Object Oriented approach. And there are other tools:

http://crud-admin-generator.com/
http://crudkit.com/
http://www.grocerycrud.com/

which are maybe better for that, I don't know.

But again, please don't do that . Do not allow the customer to modify the database schema or give them eg a phpMyAdmin which was designed for that.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM