Symfony: Rebuild from Schema.yml Without Loss of Data

Contributor Icon Contributed by David Kirk     
Tag Icon Tagged: Symfony  

As my test database became more complex, I hated entering data again after doing a propel-build-all. Following these commands, you can save your database content after rebuilding your database from your schema file.


After changing the schema.yml file, the user typically uses propel to rebuild. One of the unfortunate side effects of this is loss of data in the database.

Following these commands will dump the database, rebuild from the new schema.yml file, and then reload the content.

Note: I would trust this on test data. Consider additional backup measures before using this on a real database.

frontend is my application name here. dump.yml can be named whatever yml is desired.

php symfony propel-dump-data frontend dump.yml
php symfony cc
php symfony propel-build-all-load frontend

In order, this does the following:

- This dumps the database associated with the frontend app.
- Clears the symfony cache
- Then does a build-all and reloads the database.

Enjoy more coding and less test data generating.

 

4 Comments -


  1. mo said on April 7, 2009

    your articles are really amazing; you really write specific things, which is extremely useful

  2. hgf said on March 18, 2010

    pfdfdfd ffsd sf d

  3. Nantacoben Kim said on September 1, 2010

    very helpful even i use doctrine. For doctrine users it would be php symfony doctrine:data-dump frontend dump.yml

  4. vivienne westwood said on October 11, 2010

    useful

 

RSS feed for comments on this post. TrackBack URL

Leave a comment -