Jun
2
Writing dynamic fixtures in Symfony
Filed Under Symfony | Leave a Comment
Whenever writing dynamic fixtures in Symfony, be careful about putting new line characters, after each property, but not after the main object declaration. Second, make sure you don’t start with any whitespace, and that the entire yml file does not contain unnecessary new lines or spaces. To debug, simply enable query logging in your database, and you’ll see that, when something is wrong, parts of the query will be mushed-up. Simple example (just look where “\n” is and where it isn’t):
Oct
2
I’ve stumbled across a weired problem in Symfony, using Doctrine. Whenever I wanted to use a leftJoin, stuff would fail. So, here are some tips to help you pass this problems:
1. Check that the leftJoin is issued like $q->(a.RelationshipName r);
where “a” is the root alias of the query, RelationshipName is the NAME of the relationship defined in the yaml file of the database.
2. Make sure you use the actual relationship name from the yaml DB schema, and not the class name or something else. For instance, let’s say you have 2 classes: MysiteArticle and MysiteCategory. To fetch articles, you would build your query like: Doctrine_Query::create()->from(’MysiteArticle a’);
But, to fetch articles together with the category, you would do something like:
Doctrine_Query::create()->from(’MysiteArticle a’)->leftJoin(’a.Category c’); if your relationship name is “Category”, in the schema.yml, or Doctrine_Query::create()->from(’MysiteArticle a’)->leftJoin(’a.MysiteCategory c’); if your relationship name is MysiteCategory.
May
29
Cool trick to extract only what you need using regular expressions
Filed Under JavaScript, PHP, Programming | 2 Comments
I have a lot of article drafts sitting unused in my WP DB and I’ve decided to release them even though I don’t have very much time to get into details.
Here’s one of them.
I always comment the code I write like:
// Bogdan -> initializing dispatcher $this->dispatcher->init(); //-
Very often I’m required to extract the parts of the code I wrote, even though they are not full functions or classes, but just simple variables, or…
Read more
May
24
Symfony quickies 1
Filed Under Programming, Symfony | 2 Comments
When issuing symfony-propel-build-model and using sfGuardPlugin, some errors might appear.
Error: Attempt to set foreign key to nonexistent table, sf_guard_user!
Solution: The solution is very simple and involves changing the name of the database in the schema.xml to propel. Don’t worry, the database name will remain the one set in propel.ini, this is just to leverage the different xml files so that foreign keys can be processed.
The whole line should be:
<database name="propel" defaultIdMethod="native" noxsd="true" package="lib.model">
If that doesn’t work, try changing the package from lib.model to plugins.sfGuardPlugin.lib.model (not recommended but if it does the work, why not…;)).
Read more