Skip to content

Propel Utility is a python extension for MySQLWorkbench to manage your Propel schemas

Notifications You must be signed in to change notification settings

mazenovi/PropelUtility

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 

Repository files navigation

If you look for a quick and easy way to install PropelUtility ...

You are at the right place \o/

If you want to contribute to PropelUtility ...

You should look at this other repo https://github.com/mazenovi/PropelUtilityDev

Please PR only on this PropelUtilityDev repo

What is PropelUtility ?

  • PropelUtility can create and export to xml format a Propel schema from an existant MySQLWorkbench shcema (*.mwb file)
  • PropelUtility can manage all Propel's schema elements unsupported by MySQLWorkbench
  • PropelUtility is delivered as Python MySQLWorkbench plugin. in this it can be installed on Windows, Linux and Mac OS Platform
  • PropelUtility has been tested on linux, windows and mac os systems

What PropelUtility is not ...

  • PropelUtility can't manage any schema's data which is manageable with MySQLWorkbench
  • PropelUtility can't convert Propel schema to YAML format (use symfony propel:schema-to-yml instead)

PropelUtility

Installation

via the command line

git clone git://github.com/mazenovi/PropelUtility.git

or unzip the downloaded archive downloaded " from PropelUtility's github page

  • open MySQLWorkbench
  • go to "Scripting" -> "Install Plugin / Module ..." browse to the file propel_utility_grt.py you just gited or unziped, select it
  • restart MySQLWorkbench

PropelUtility add two new entries to MySQLWorkbench in "Plugins" -> "Catalog" :

  • "Propel Utility"
  • "Propel Erase All Data"

usage

Any changes on the Propel data with Propel Utility will be validated after a click on the "OK" Button.

If "CANCEL" is clicked, changes will be lost.

To definitely save the Propel data, you should remember to save the .mwb file

There are 3 type fields:

  • the non-editable fields : they are for information only, MySQLworkbench can edit them but not PropelUtility
  • the editable fields : on click on those fields make them editable and you can change their value with a keyboard input
  • the editable fields with choices list : on click on those fields make them editable and you can change their value with a keyboard input, and a double click will show a list with all possible choices. Just select an item and click the "select this value" button N.B. it seems that the choices are unavailable on linux.

tabs

  • Database can manage attributes for <database /> xml tag
  • Tables can manage attributes for <table /> xml tag
  • Columns can manage attributes for <column /> xml tag
  • Foreign Keys can manage attributes for <foreign-key /> xml tag
  • Indices show only attributes for <index /> et <unique/> xml tags
  • Behaviors can manage Behaviors for each table (<behavior /> xml tag) and all associated parameters (<parameter /> xml tag)
  • Eternal Schemas can manage attributes for <external-schema /> xml tag
  • Export can export data managed with previous tab with this rule: required attributes are always exported, and optional attributes will be exported only if associated value is different from defaut value.

add your custom behaviors

in Behaviors tab you can browse to a Python file called PropelExtraBehavior.py to add extra behaviors : User-Contributed Behaviors or your own.

Your PropelExtraBehavior.py file should look as

from PropelObject import *

__all__ = ["PropelExtraBehavior"]

VERSION = "1.0.0"

class PropelExtraBehavior(PropelObject):

  behaviors =  {
    'awesomable':(),
    'true_inheritance':('extends',)
  }

where dict's keys are behavior's name and dict's items are behavior's parameters

Propel Erase all data

This entry can erase all Propel data managed by PropelUtility and only this data (MySQLWorkbench data will not be affected)

About

Propel Utility is a python extension for MySQLWorkbench to manage your Propel schemas

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Languages