dutch german
  Hoofdpagina Projecten Elektronica Meubelbouw Recepten Corgies Over mij
  Projecten Wandhouder Vereniging 2.0
Vereniging 2.0
Bibliotheken
Database
Menu's

Bibliotheken

Bij het ontwikkelen van deze software heb ik diverse bibliotheken en hulpprogramma's gebruikt. Als overkoepelend framework wordt Symfony gebruikt. Als verbinding tussen de database en Symfony gebruik ik Propel.

Symfony

Propel

Als verbinding met de database kan door Symfony Doctrine en Propel gebruikt worden. Standaard is hier Doctrine. Ik heb echter besloten, i.p.v. Doctrine Propel te gebruiken, omdat bij vergelijken geen van de twee als duidelijke winnaar uit de bus komt (het lijkt meer op een religieus vraagstuk). Één van de voordelen van Propel is de betere ondersteuning door ontwikkelingsomgevingen, in het bijzonder een werkende auto-completering. Verder wordt bij vergelijken vaak geschreven, dat het eenvoudiger is Propel te leren, omdat er minder "magie achter de schermen" gebeurt. Daarom heb ik besloten, Propel te gebruiken.

Hulpprogramma's

Eclipse

Deze gehele software is onder Eclipse PDT ontwikkelt.

Datenbankmodellering

De databse heb ik met het grafische programma MySQL Workbench ontwikkelt.

Convertering van de database naar Propel

Propel gebruikt een XML-bestand als beschrijving van de database. Uit dit bestand worden zowel de SQL-commando's voor het creëren van de database als ook de PHP-objecten gegenereerd. Dit bestand kan met de hand gemaakt worden, maar het is eenvoudiger en foutlozer dit automatisch uit het MySQL Workbench file te genereren. Hiervoor gebruikt ik de mysql-workbench-schema-exporter. Met het volgende commando kan het Workbench-bestand naar een Propel-schema omgezet worden:

php cli/export.php --export=propel1-xml database.mwb

Dit genereerd het bestand vereniging.schema.xml, dat door Propel gelezen kan worden. Voordat Propel dit bestand kan gebruiken, moet in de regel <database ... nog het element namespace="vereniging" ingevoegd worden.

Valid XHTML 1.0 Transitional
Valid CSS!
05.12.2012 16:13u