PHP Doctrine and ORM Designer
This article includes complete information about work with ORM framework Doctrine in ORM Designer. Here you can find all supported functions offered by ORM Designer for Doctrine framework.
Design your model
ORM Designer lets easily design a visual application model. Instead of manual editing of several different YAML files in text editor everything is performed in ORM Designer visual studio. Thanks to that the whole process of diagram design is much more faster and error free. The whole model can be divided into several independent plugins saved to separated folders and files in accordance with the structure of your application.
Simply navigate
ORM Designer has many ways how to easily orientate in large and complicated models. Besides graphic representation of whole model which can be freely zoomed, ORM Designer has a small "navigator" window allowing to move with the viewed area of model. Next, the "Summary window" is available, in which you can search by the names of all objects. Searching can be executed by a part of name or several words and filter by different types of objects. ORM Designer also displays visual tree of whole project in which filtering by a name can be realized. All these function allows user to manipulate with model quickly and easily.
All of these functions will help you with day to day work with large as well as with small projects. Thanks to visual representation of model you will better orientate in your models and spend less time by searching a correct file or object.
Basic ERD modelling
ORM Designer separates an ERD model design and additional ORM Doctrine properties. Firstly, user design his basic model composed of tables, columns, foreign keys, indexies and other database objects. After then user can set for this objects particular ORM properties by using the property editor. The basic ERD objects are:
| Object | Property |
|---|---|
| Module | Name |
| Table | Name |
| Column | Name, Type, Size, Required, Unique, Primary key, Auto increment, Default value, Enum values |
| Foreign Key ( 1:m relation ) | Name, Reference columns |
| Index | Name, Unique, Indexed columns |
| Many to Many Relation | M:N Table, Foreign keys used to define many-to-many relation |
Some editing screenshots :
Properties
ORM Designer allows for each object in model store and edit a lot of properties. Every property has its own data type and if it is possible, ORM Designer offers also a help for these types. For example for BOOL data type automatically offers true/false combo box. For property foreignType on foreign key object offers enumeration type one / many. In addition, ORM Designer allows more complex types, as a list of tables or columns, or ordered or non-ordered value list.
| Exemple of properties, that are possible to store and edit for object Table: | |
|---|---|
|
|
Behaviours - actAs
ORM Designer automatically offers several basic Doctrine behaviors. For each table in the model it is possible to assign a list of various behaviors. Every behaviour has defined its properties, or for some behaviors can be preset its own behaviors (e.g. for behaviour i18n). The basic set of behaviors can be extended by own behaviors, as is described in the article How to configure new ORM properties and data types.
| List of supported behaviors : | |
|---|---|
|
|
Plugin support
ORM Designer allows to save one model to several plugins - modules. Each module includes just a part of the model and can be shared among more project, so it reflects your structure and a way of working with projects.
Many to many relation support
ORM Designer enables direct work with many to many relations. The application contains a tool for creating of these relationship and their graphic representation. All m:n relations are also automatically imported and exported between the ORM Designer model and Doctrine schema.
Import Doctrine
During your first using of ORM Designer it is not necessary to recreate the whole diagram in the application. ORM Designer can automatically import your current project from Doctrine schema.yml definitions. Only by several clicks you create a well-aranged project model from your text definitions.
If you use Symfony framework, you can use a tutorial How to import existing symfony project. If you use Doctrine in some other MVC framework, follow the article How to import any existing project based on Propel or Doctrine ORM.
Export Doctrine schema
ORM Designer allows export edited model to the files corresponding with a Doctrine ORM definition. Internal generator creates files schema.yml in YAML data format and store them to correct locations.
External tools
ORM Designer enables to define an external tool. Each external tool is defined by its executable-path, executable arguments and by default path. Besides, it is possible to use pre-defined constants that are evaluated before tool is executed. These constants can be translated into current project name, project path, ORM or MVC framework.
Conclusion
We believe, that our application ORM Designer will faciliate your day-to-day work and save a lot of time. Models created by ORM designer will contain much less errors.
Download
If you are interested in ORM Designer application, here you can download a free 14 days trial version.

