<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-6432518326626939442</id><updated>2012-02-15T04:44:01.213-08:00</updated><category term='symfony2 tutorial'/><category term='symfony2'/><category term='symfony-sugarbox'/><category term='mongodb/symfony2'/><category term='symfony'/><category term='symfony2 architecture'/><category term='symfony2-sugarbox'/><category term='tutorial series'/><category term='socail networking web app'/><category term='mongodb'/><title type='text'>symfony2</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://symfony2easy.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6432518326626939442/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://symfony2easy.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Don</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>13</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-6432518326626939442.post-4445284885703015141</id><published>2011-12-02T08:29:00.000-08:00</published><updated>2011-12-02T08:37:38.015-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='symfony2'/><category scheme='http://www.blogger.com/atom/ns#' term='socail networking web app'/><title type='text'>Social networking web application part1</title><content type='html'>In this tutorial we are going to create a web application having social networking functionality. For this we have user registration, user profile, web forms, friends list, photo album, message service.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6432518326626939442-4445284885703015141?l=symfony2easy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://symfony2easy.blogspot.com/feeds/4445284885703015141/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://symfony2easy.blogspot.com/2011/12/social-networking-web-application-part1.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6432518326626939442/posts/default/4445284885703015141'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6432518326626939442/posts/default/4445284885703015141'/><link rel='alternate' type='text/html' href='http://symfony2easy.blogspot.com/2011/12/social-networking-web-application-part1.html' title='Social networking web application part1'/><author><name>Don</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6432518326626939442.post-178021103832919579</id><published>2011-12-02T08:13:00.000-08:00</published><updated>2011-12-02T08:32:40.016-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tutorial series'/><category scheme='http://www.blogger.com/atom/ns#' term='symfony2 tutorial'/><title type='text'>Back again....</title><content type='html'>After a long time of absence, i going to make a series of tutorial based on some of the common applications with advanced concepts.&amp;nbsp;within these days symfony2 become very robust and powerful framework. i'm considering an&amp;nbsp;audience, which had minimum knowledge about symfony framework..&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6432518326626939442-178021103832919579?l=symfony2easy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://symfony2easy.blogspot.com/feeds/178021103832919579/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://symfony2easy.blogspot.com/2011/12/back-again.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6432518326626939442/posts/default/178021103832919579'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6432518326626939442/posts/default/178021103832919579'/><link rel='alternate' type='text/html' href='http://symfony2easy.blogspot.com/2011/12/back-again.html' title='Back again....'/><author><name>Don</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6432518326626939442.post-7009167059030699595</id><published>2011-02-14T09:23:00.000-08:00</published><updated>2011-02-14T10:21:26.672-08:00</updated><title type='text'>First  step</title><content type='html'>In this tutorial we understand about the file structure of our web app.&lt;br /&gt;&lt;br /&gt;Before that &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 1.obtain a new copy of symfony framework from&amp;nbsp;&lt;a href="http://github.com/symfony/symfony"&gt;here.&lt;/a&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 2.make a new folder inside your server and named as "webapp".&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 3.create a folder structure like below:&lt;br /&gt;&amp;nbsp;&amp;nbsp;  &amp;nbsp;&amp;nbsp;  &amp;nbsp;&amp;nbsp;  &amp;nbsp;&amp;nbsp;  &amp;nbsp;&amp;nbsp;  &amp;nbsp;&amp;nbsp;  &lt;br /&gt;&lt;div class="highlight-php"&gt;&lt;div class="highlight"&gt;&lt;pre&gt;&lt;span class="nx"&gt;www&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt; &lt;span class="o"&gt;&amp;lt;-&lt;/span&gt; &lt;span class="nx"&gt;your&lt;/span&gt; &lt;span class="nx"&gt;web&lt;/span&gt; &lt;span class="nx"&gt;root&lt;/span&gt; &lt;span class="nx"&gt;directory&lt;/span&gt;&lt;br /&gt;    &lt;span class="nx"&gt;webapp&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt; &lt;br /&gt;        &lt;span class="nx"&gt;app&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;br /&gt;            &lt;span class="nx"&gt;cache&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;br /&gt;            &lt;span class="nx"&gt;config&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;br /&gt;            &lt;span class="nx"&gt;logs&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;br /&gt;        &lt;span class="nx"&gt;src&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;br /&gt;            &lt;span class="nx"&gt;webapps&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;br /&gt;                &lt;span class="nx"&gt;HelloBundle&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;br /&gt;                    &lt;span class="nx"&gt;Controller&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;br /&gt;                    &lt;span class="nx"&gt;Resources&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;br /&gt;        &lt;span class="nx"&gt;vendor&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;br /&gt;                   &lt;br /&gt;            &lt;br /&gt;        &lt;span class="nx"&gt;web&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span class="o"&gt;&amp;nbsp;&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span class="o"&gt;      4. place your unarchived symfony inside the vendor folder.&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span class="o"&gt;&amp;nbsp;&lt;/span&gt;&lt;/pre&gt;&lt;pre&gt;&lt;span class="o"&gt;&amp;nbsp;&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6432518326626939442-7009167059030699595?l=symfony2easy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://symfony2easy.blogspot.com/feeds/7009167059030699595/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://symfony2easy.blogspot.com/2011/02/first-step.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6432518326626939442/posts/default/7009167059030699595'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6432518326626939442/posts/default/7009167059030699595'/><link rel='alternate' type='text/html' href='http://symfony2easy.blogspot.com/2011/02/first-step.html' title='First  step'/><author><name>Don</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6432518326626939442.post-4823332732795119256</id><published>2010-08-27T00:50:00.000-07:00</published><updated>2010-08-27T00:50:59.627-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='symfony2'/><category scheme='http://www.blogger.com/atom/ns#' term='symfony2 tutorial'/><category scheme='http://www.blogger.com/atom/ns#' term='symfony-sugarbox'/><title type='text'>sugarbox in brief</title><content type='html'>This post is the summary of the previous three tutorial posts.&lt;br /&gt;&lt;br /&gt;1. download the latest sugarbox from &lt;a href="http://github.com/roydonstharayil/sugarbox"&gt;here.&lt;/a&gt;. (or you can use git clone command)&lt;br /&gt;2. upload to your server, initially set permission to all&lt;br /&gt;3.check whether you have all the required items(go to your browser http://localhost/sugarbox/web/check.php)&lt;br /&gt;4.In terminal cd to your sugarbox directory&lt;br /&gt;5.in terminal type this&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: #3d85c6;"&gt;php blog/console -s&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: white;"&gt;6.you'll get a symfony environment. to see all the available commands type this:&lt;/span&gt;&lt;div&gt;list&lt;/div&gt;&lt;div&gt;7.to create database as configured in blog/config/config.yml type this in terminal:&lt;/div&gt;&lt;div&gt;doctrine:database:create&lt;/div&gt;&lt;div&gt;8.we create the Entity model in src/Application/BlogBundle/Entity/Blog.php doctrine take this and convert to database schema. to create this(schema) type&amp;nbsp;&lt;/div&gt;&lt;div&gt;doctrine:schema:create&lt;/div&gt;&lt;div&gt;9.next, create repositories for entity&lt;/div&gt;&lt;div&gt;doctrine:generate:repositories&lt;/div&gt;&lt;div&gt;10.the above will create BlogBundle/Entity/BlogRepositories.php&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;After finishing the above steps check in your browser.&amp;nbsp;&lt;/div&gt;&lt;div&gt;http://localhost/sugarbox/web/index.php&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;To create new blog post :&lt;/div&gt;&lt;div&gt;http://localhost/sugarbox/web/index.php/blog/new&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6432518326626939442-4823332732795119256?l=symfony2easy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://symfony2easy.blogspot.com/feeds/4823332732795119256/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://symfony2easy.blogspot.com/2010/08/sugarbox-in-brief.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6432518326626939442/posts/default/4823332732795119256'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6432518326626939442/posts/default/4823332732795119256'/><link rel='alternate' type='text/html' href='http://symfony2easy.blogspot.com/2010/08/sugarbox-in-brief.html' title='sugarbox in brief'/><author><name>Don</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6432518326626939442.post-7883529217765096972</id><published>2010-08-23T22:26:00.000-07:00</published><updated>2010-08-24T02:40:36.887-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='symfony'/><category scheme='http://www.blogger.com/atom/ns#' term='symfony2'/><category scheme='http://www.blogger.com/atom/ns#' term='symfony2 tutorial'/><category scheme='http://www.blogger.com/atom/ns#' term='symfony2-sugarbox'/><title type='text'>sugarbox part 3</title><content type='html'>routing.yml&lt;br /&gt;&lt;br /&gt;homepage:&lt;br /&gt;pattern:  /&lt;br /&gt;defaults: { _controller: FrameworkBundle:Default:index }&lt;br /&gt;&lt;br /&gt;blog:&lt;br /&gt;resource: BlogBundle/Resources/config/routing.yml&lt;br /&gt;&lt;br /&gt;From the first line(homepage), it's clear that, the URL http://localhost/sugarbox/web/index.php/ goes to the 'Default' controller in 'FrameworkBundle' and point to the 'index' action. It shows this in your browser:&lt;br /&gt;&lt;br /&gt;Congratulations!&lt;br /&gt;You have successfully created a new Symfony 2 application. &lt;br /&gt;So check it yourself. You can give any name instead of homepage.  &lt;br /&gt;&lt;br /&gt;The second(blog), point to another routing file inside src/Application/BlogBundle/Resources/config/routing.yml&lt;br /&gt;&lt;br /&gt;it goes like this:&lt;br /&gt;&lt;br /&gt;blog:&lt;br /&gt;pattern:  /blog&lt;br /&gt;defaults: { _controller: BlogBundle:Blog:index }&lt;br /&gt;&lt;br /&gt;blog_new:&lt;br /&gt;pattern:  /blog/new&lt;br /&gt;defaults: { _controller: BlogBundle:Blog:new }&lt;br /&gt;&lt;br /&gt;so when a request like this http://localhost/sugarbox/web/index.php/blog points to 'Blog' controller in 'BlogBundle' and 'index' action. This outputs this:&lt;br /&gt;&lt;br /&gt;Blog Application&lt;br /&gt;Hello Blog index! &lt;br /&gt;&lt;br /&gt;Http://localhost/sugarbox/web/index.php/blog/new points to 'Blog' controller in 'BlogBundle' and 'new' action. This outputs this:&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_2Iuvhlfgiy4/THOSjIEBgvI/AAAAAAAAAX4/eP7JBNh4_yo/s1600/sugarbox1.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="140" src="http://3.bp.blogspot.com/_2Iuvhlfgiy4/THOSjIEBgvI/AAAAAAAAAX4/eP7JBNh4_yo/s200/sugarbox1.png" width="200" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Beware: we can't save the post now. So by clicking submit button make no sense!&lt;br /&gt;&lt;br /&gt;In your terminal go to sugarbox directory&lt;br /&gt;$ cd sugarbox&lt;br /&gt;symfony2 has inbuilt CLI. We now initiate thie&lt;br /&gt;$ php blog/console -s&lt;br /&gt;this will display this:&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/_2Iuvhlfgiy4/THOSq1P9bPI/AAAAAAAAAYA/6MItOlJh4Do/s1600/sugarbox3.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="122" src="http://2.bp.blogspot.com/_2Iuvhlfgiy4/THOSq1P9bPI/AAAAAAAAAYA/6MItOlJh4Do/s200/sugarbox3.png" width="200" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;to list all commands&lt;br /&gt;&lt;br /&gt;Symfony &amp;gt; list&lt;br /&gt;Symfony displays this:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Now we are going to create database as configured in config.yml&lt;br /&gt;initialy, we drop the database(todo), if there any present.&lt;br /&gt;Symfony &amp;gt; doctrine:database:drop&lt;br /&gt;Dropped database for connection named todo&lt;br /&gt;Symfony &amp;gt; doctrine:database:create&lt;br /&gt;Created database for connection named todo&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;to check, go to your phpmyadmin. You'll see todo database(empty)&lt;br /&gt;To create tables according to schema created in BlogBundle/Entity/Blog.php.&lt;br /&gt;&lt;br /&gt;first, we create repositories&lt;br /&gt;Symfony &amp;gt; doctrine:generate:repositories&lt;br /&gt;Generating entity repositories for "BlogBundle"&lt;br /&gt;&lt;br /&gt;&amp;gt; generating Bundle\BlogBundle\Entity\BlogRepository&lt;br /&gt;&lt;br /&gt;now we create the schema&lt;br /&gt;Symfony &amp;gt; doctrine:schema:create&lt;br /&gt;&lt;br /&gt;to check, go to phpmyadmin. There is a table named 'posts'&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6432518326626939442-7883529217765096972?l=symfony2easy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://symfony2easy.blogspot.com/feeds/7883529217765096972/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://symfony2easy.blogspot.com/2010/08/sugarbox-part-3.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6432518326626939442/posts/default/7883529217765096972'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6432518326626939442/posts/default/7883529217765096972'/><link rel='alternate' type='text/html' href='http://symfony2easy.blogspot.com/2010/08/sugarbox-part-3.html' title='sugarbox part 3'/><author><name>Don</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_2Iuvhlfgiy4/THOSjIEBgvI/AAAAAAAAAX4/eP7JBNh4_yo/s72-c/sugarbox1.png' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6432518326626939442.post-685949208261267760</id><published>2010-08-23T10:52:00.001-07:00</published><updated>2010-08-23T10:56:34.588-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='symfony2'/><category scheme='http://www.blogger.com/atom/ns#' term='symfony2 tutorial'/><category scheme='http://www.blogger.com/atom/ns#' term='symfony-sugarbox'/><title type='text'>sugarbox part2</title><content type='html'>&amp;nbsp;&lt;b&gt;autoload.php&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;$vendorDir = __DIR__.'/vendor';&lt;br /&gt;&lt;br /&gt;require_once $vendorDir.'/symfony/src/Symfony/Framework/UniversalClassLoader.php';&lt;br /&gt;&lt;br /&gt;use Symfony\Framework\UniversalClassLoader;&lt;br /&gt;&lt;br /&gt;$loader = new UniversalClassLoader();&lt;br /&gt;$loader-&amp;gt;registerNamespaces(array(&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 'Symfony'&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; =&amp;gt; $vendorDir.'/symfony/src',&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 'Application'&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; =&amp;gt; __DIR__,&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 'Bundle'&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; =&amp;gt; __DIR__,&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 'Doctrine\\Common'&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; =&amp;gt; $vendorDir.'/doctrine-common/lib',&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 'Doctrine\\DBAL\\Migrations' =&amp;gt; $vendorDir.'/doctrine-migrations/lib',&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 'Doctrine\\ODM\\MongoDB'&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; =&amp;gt; $vendorDir.'/doctrine-mongodb/lib',&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 'Doctrine\\DBAL'&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; =&amp;gt; $vendorDir.'/doctrine-dbal/lib',&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 'Doctrine'&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; =&amp;gt; $vendorDir.'/doctrine/lib',&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 'Zend'&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; =&amp;gt; $vendorDir.'/zend/library',&lt;br /&gt;));&lt;br /&gt;$loader-&amp;gt;registerPrefixes(array(&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 'Swift_' =&amp;gt; $vendorDir.'/swiftmailer/lib/classes',&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 'Twig_'&amp;nbsp; =&amp;gt; $vendorDir.'/twig/lib',&lt;br /&gt;));&lt;br /&gt;$loader-&amp;gt;register();&lt;br /&gt;&lt;br /&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;/meta&gt; 	&lt;title&gt;&lt;/title&gt; 	&lt;meta content="OpenOffice.org 3.2  (Linux)" name="GENERATOR"&gt;&lt;/meta&gt; 	&lt;style type="text/css"&gt;	&lt;!--		@page { margin: 2cm }		P { margin-bottom: 0.21cm }	--&gt;	&lt;/style&gt;  &lt;br /&gt;&lt;div align="LEFT" style="margin-bottom: 0cm;"&gt;Now we good to create class for our own application-blog. All the php files related to application goes to corresponding application bundles. In this case inside BlogBundle.&lt;/div&gt;&lt;div align="LEFT" style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="LEFT" style="margin-bottom: 0cm;"&gt;Inside BlogBundle you'll see these folders:&lt;/div&gt;&lt;div align="LEFT" style="margin-bottom: 0cm;"&gt;Controller&lt;/div&gt;&lt;div align="LEFT" style="margin-bottom: 0cm;"&gt;Entity&lt;/div&gt;&lt;div align="LEFT" style="margin-bottom: 0cm;"&gt;Resources&lt;/div&gt;&lt;div align="LEFT" style="margin-bottom: 0cm;"&gt;and this file BlogBundle.php&lt;/div&gt;&lt;div align="LEFT" style="margin-bottom: 0cm;"&gt;open BlogBundle.php&lt;/div&gt;&lt;div align="LEFT" style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="LEFT" style="margin-bottom: 0cm;"&gt;&lt;b&gt;BlogBundle.php&lt;/b&gt;&lt;/div&gt;&lt;div align="LEFT" style="margin-bottom: 0cm;"&gt;&lt;b&gt;&amp;nbsp;&lt;/b&gt; &lt;/div&gt;&lt;div align="LEFT" style="margin-bottom: 0cm;"&gt;&lt;br /&gt;namespace Application\BlogBundle;&lt;br /&gt;&lt;br /&gt;use Symfony\Framework\Bundle\Bundle;&lt;br /&gt;&lt;br /&gt;class BlogBundle extends Bundle&lt;br /&gt;{&lt;br /&gt;}&lt;/div&gt;&lt;div align="LEFT" style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="LEFT" style="margin-bottom: 0cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;/meta&gt; 	&lt;title&gt;&lt;/title&gt; 	&lt;meta content="OpenOffice.org 3.2  (Linux)" name="GENERATOR"&gt;&lt;/meta&gt; 	&lt;style type="text/css"&gt;	&lt;!--		@page { margin: 2cm }		P { margin-bottom: 0.21cm }	--&gt;	&lt;/style&gt;  &lt;/div&gt;&lt;div align="LEFT" style="margin-bottom: 0cm;"&gt;All your controller classess goes into Controller folder.&lt;/div&gt;&lt;div align="LEFT" style="margin-bottom: 0cm;"&gt;Model classess goes into Entity folder&lt;/div&gt;&lt;div align="LEFT" style="margin-bottom: 0cm;"&gt;All layouts, views, custom application routes goes into Resources folder.&lt;/div&gt;&lt;div align="LEFT" style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="LEFT" style="margin-bottom: 0cm;"&gt;Ok. let's begin with Model classess. In this tutorial we are using doctrine 2 as ORM. You can read more about doctrine 2 here. S2 also supports propel. So you have download the doctrine 2 from here.&lt;/div&gt;&lt;div align="LEFT" style="margin-bottom: 0cm;"&gt;In doctrine2 we can create schema from three files: plain php(annotation), YAML, xml. We go for annotation type, bcoz it has more advantage. In Entity folder create a php file – Blog.php&lt;/div&gt;&lt;div align="LEFT" style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="LEFT" style="margin-bottom: 0cm;"&gt;&lt;b&gt;Blog.php&lt;/b&gt;&lt;/div&gt;&lt;div align="LEFT" style="margin-bottom: 0cm;"&gt;&lt;b&gt;&amp;nbsp;&lt;/b&gt; &lt;/div&gt;&lt;div align="LEFT" style="margin-bottom: 0cm;"&gt;&lt;br /&gt;declare(ENCODING = 'utf-8');&lt;br /&gt;namespace Application\BlogBundle\Entity;&lt;br /&gt;&lt;br /&gt;use Symfony\Component\Validator\Mapping\ClassMetadata;&lt;br /&gt;use Symfony\Component\Validator\Constraints;&lt;br /&gt;&lt;br /&gt;/**&lt;br /&gt;&amp;nbsp;* @Entity(repositoryClass="Bundle\BlogBundle\Entity\BlogRepository")&lt;br /&gt;&amp;nbsp;* @Table(name="posts")&lt;br /&gt;&amp;nbsp;* @HasLifecycleCallbacks&lt;br /&gt;&amp;nbsp;*/&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;class Blog&lt;br /&gt;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; public static function loadValidatorMetadata(ClassMetadata $metadata)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; $metadata-&amp;gt;addPropertyConstraint('title', new Constraints\NotBlank());&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; $metadata-&amp;gt;addPropertyConstraint('title', new Constraints\MinLength(5));&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; $metadata-&amp;gt;addGetterConstraint('description', new Constraints\NotNull());&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /**&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * @Id @Column(type="integer")&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; * @GeneratedValue(strategy="AUTO")&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; */&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; private $id;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;/**&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; * &lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; * @Column(type="string", length=250)&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; * &lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; */&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;protected $title;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;/**&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; * &lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; *&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; * @column(type="string", length=250)&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp; */&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;protected $description;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;public function getId()&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return $this-&amp;gt;id;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;public function setTitle($title) {&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;$this-&amp;gt;title = $title;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;public function getTitle() {&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;return $this-&amp;gt;title;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;public function setDescription($description) {&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;$this-&amp;gt;description = $description;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;public function getDescription() {&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;return $this-&amp;gt;description;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;}&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&lt;br /&gt;}&lt;/div&gt;&lt;div align="LEFT" style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="LEFT" style="margin-bottom: 0cm;"&gt;&amp;nbsp;Doctrine ORM change the above class into schema and create database. For this we use CLI(command line interface). To setup doctrine and configure our application we've to write blog/config/config.yml .&lt;/div&gt;&lt;div align="LEFT" style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/div&gt;&amp;nbsp; let's take a look:&lt;br /&gt;&lt;div align="LEFT" style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="LEFT" style="margin-bottom: 0cm;"&gt;kernel.config:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; charset:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; UTF-8&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; error_handler: null&lt;br /&gt;&lt;br /&gt;web.config:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; router:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; { resource: "%kernel.root_dir%/config/routing.yml" }&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; validation: { enabled: true, annotations: true }&lt;br /&gt;&lt;br /&gt;web.templating:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; escaping:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; htmlspecialchars&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;doctrine.dbal:&lt;br /&gt;&amp;nbsp; connections:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; default:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; driverClass: Doctrine\DBAL\Driver\PDOMySql\Driver&amp;nbsp; #&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; dbname:&amp;nbsp;&amp;nbsp; todo&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; user:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; root&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; password: admin&lt;br /&gt;doctrine.orm: ~&lt;/div&gt;&lt;div align="LEFT" style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="LEFT" style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="LEFT" style="margin-bottom: 0cm;"&gt;in s2, you can create multiple database connection. here use single (default) connection. you can give the database name, mysql username, password .&lt;/div&gt;&lt;div align="LEFT" style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="LEFT" style="margin-bottom: 0cm;"&gt;[continue]&lt;/div&gt;&lt;div align="LEFT" style="margin-bottom: 0cm;"&gt;&lt;/div&gt;&lt;div align="LEFT" style="margin-bottom: 0cm;"&gt;note: these tutorials are updated frequently. i know there are so many typos and errors are there. please comment those here. if you have any doubts disscuss &lt;a href="http://groups.google.co.in/group/symfony2easy?hl=en"&gt;here.&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6432518326626939442-685949208261267760?l=symfony2easy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://symfony2easy.blogspot.com/feeds/685949208261267760/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://symfony2easy.blogspot.com/2010/08/sugarbox-part2.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6432518326626939442/posts/default/685949208261267760'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6432518326626939442/posts/default/685949208261267760'/><link rel='alternate' type='text/html' href='http://symfony2easy.blogspot.com/2010/08/sugarbox-part2.html' title='sugarbox part2'/><author><name>Don</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6432518326626939442.post-8054887038544253937</id><published>2010-08-23T10:35:00.000-07:00</published><updated>2010-08-23T10:35:57.951-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='symfony2'/><category scheme='http://www.blogger.com/atom/ns#' term='symfony2 tutorial'/><category scheme='http://www.blogger.com/atom/ns#' term='symfony2-sugarbox'/><category scheme='http://www.blogger.com/atom/ns#' term='symfony-sugarbox'/><title type='text'>sugarbox</title><content type='html'>&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;/meta&gt; 	&lt;title&gt;&lt;/title&gt; 	&lt;meta content="OpenOffice.org 3.2  (Linux)" name="GENERATOR"&gt;&lt;/meta&gt; 	&lt;style type="text/css"&gt;	&lt;!--		@page { margin: 2cm }		P { margin-bottom: 0.21cm }	--&gt;	&lt;/style&gt;  &lt;br /&gt;&lt;div style="margin-bottom: 0cm;"&gt;In this application we are using latest symfony2 code. There are so many different changes are made in this latest version. You can get the original symfony2 code from http://github.com/symfony&lt;/div&gt;&lt;div style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0cm;"&gt;So we have to make a custom application. Sugarbox can be downloaded from  &lt;a href="http://github.com/roydonstharayil/sugarbox"&gt;here.&lt;/a&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0cm;"&gt;The steps:&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;ol&gt;&lt;li&gt;&lt;br /&gt;&lt;div style="margin-bottom: 0cm;"&gt;Download sugarbox from above 	mentioned URL&lt;/div&gt;&lt;/li&gt;&lt;li&gt; unzip and upload to server root&lt;/li&gt;&lt;/ol&gt;&lt;div style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0cm;"&gt;This the final structure.&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_2Iuvhlfgiy4/THKuSe2Fu5I/AAAAAAAAAXw/TWtqy7YbP34/s1600/sugarbox2.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="200" src="http://3.bp.blogspot.com/_2Iuvhlfgiy4/THKuSe2Fu5I/AAAAAAAAAXw/TWtqy7YbP34/s200/sugarbox2.png" width="100" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0cm;"&gt;symfony2 basic:&lt;/div&gt;&lt;div style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0cm;"&gt;web/index.php is front controller. It's the only php file that access from a browser. So all your php files are well protected. Index.php accepts the HTTP request from the browser and sends it to the application. S2 is kernal based application. Kernal is the heart of all s2 operations. So to create a s2 app we need to create sub class of this kernal (abstract) class. This is placed under blog folder. So create a php file called BlogKernel.php. The naming is very important. Create another folder 'config' inside blog main folder. All configuration files and routing files are placed under config folder. For this tutorial we not go for caching and logging mechanism. We can back here after finishing this tutorial.&lt;/div&gt;&lt;div style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0cm;"&gt;In s2, all are in the form of bundles. 'Bundles are first class citizen'. So our application bundle(BlogBundle) will place inside Application folder. Ok. So let's do some coding.&lt;/div&gt;&lt;div style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0cm;"&gt;&lt;b&gt;Front Controller&lt;/b&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0cm;"&gt;&lt;b&gt;&amp;nbsp;&lt;/b&gt; &lt;/div&gt;&lt;div style="margin-bottom: 0cm;"&gt;Open web/index.php file using your favourite text editor.&amp;nbsp;&lt;/div&gt;&lt;div style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0cm;"&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0cm;"&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0cm;"&gt;&amp;nbsp;require_once __DIR__.'/../blog/BlogKernel.php';&lt;br /&gt;&lt;br /&gt;$kernel = new BlogKernel('dev', true);&lt;br /&gt;$kernel-&amp;gt;handle()-&amp;gt;send();&lt;/div&gt;&lt;div style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0cm;"&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;/meta&gt; 	&lt;title&gt;&lt;/title&gt; 	&lt;meta content="OpenOffice.org 3.2  (Linux)" name="GENERATOR"&gt;&lt;/meta&gt; 	&lt;style type="text/css"&gt;	&lt;!--		@page { margin: 2cm }		P { margin-bottom: 0.21cm }	--&gt;	&lt;/style&gt;  &lt;/div&gt;&lt;div align="LEFT" style="margin-bottom: 0cm;"&gt;These are the only lines that goes into index.php. Here we create a new instance of our Blogkernal class which we will create soon. In $kernel = new BlogKernel('prod', false); line, 'prod' and 'false' are two arguments that pass to the blog application. 'prod' means setup the production environment and false means no debugging. Instead of 'prod' you can give 'dev' for development. In development environment you need debugging on – so instead of 'false' we write 'true'.&amp;nbsp;&lt;/div&gt;&lt;div align="LEFT" style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div align="LEFT" style="margin-bottom: 0cm;"&gt;&lt;b&gt;Application kernel&lt;/b&gt;&lt;/div&gt;&lt;div align="LEFT" style="margin-bottom: 0cm;"&gt;&lt;b&gt;&amp;nbsp;&lt;/b&gt; &lt;/div&gt;&lt;div align="LEFT" style="margin-bottom: 0cm;"&gt;Ok lets move to BlogKernel.php.&lt;/div&gt;&amp;nbsp; &lt;br /&gt;&lt;div style="margin-bottom: 0cm;"&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0cm;"&gt;require_once __DIR__.'/../src/autoload.php';&lt;br /&gt;&lt;br /&gt;use Symfony\Framework\Kernel;&lt;br /&gt;use Symfony\Component\DependencyInjection\Loader\LoaderInterface;&lt;br /&gt;use Symfony\Component\DependencyInjection\ContainerBuilder;&lt;br /&gt;&lt;br /&gt;class BlogKernel extends Kernel&lt;br /&gt;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; public function registerRootDir()&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return __DIR__;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; public function boot()&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Symfony\Component\OutputEscaper\Escaper::markClassesAsSafe(array(&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 'Symfony\Component\Form\Form',&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 'Symfony\Component\Form\Field'&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ));&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return parent::boot();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; public function registerBundles()&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; $bundles = array(&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; new Symfony\Framework\KernelBundle(),&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; new Symfony\Bundle\FrameworkBundle\FrameworkBundle(),&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; new Symfony\Bundle\ZendBundle\ZendBundle(),&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; new Symfony\Bundle\SwiftmailerBundle\SwiftmailerBundle(),&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; new Symfony\Bundle\DoctrineBundle\DoctrineBundle(),&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //new Symfony\Bundle\DoctrineMigrationsBundle\DoctrineMigrationsBundle(),&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //new Symfony\Bundle\DoctrineMongoDBBundle\DoctrineMongoDBBundle(),&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //new Symfony\Bundle\PropelBundle\PropelBundle(),&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //new Symfony\Bundle\TwigBundle\TwigBundle(),&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; new Application\BlogBundle\BlogBundle(),&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; );&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if ($this-&amp;gt;isDebug()) {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return $bundles;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; public function registerBundleDirs()&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return array(&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 'Application'&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; =&amp;gt; __DIR__.'/../src/Application',&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 'Bundle'&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; =&amp;gt; __DIR__.'/../src/Bundle',&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 'Symfony\\Bundle' =&amp;gt; __DIR__.'/../src/vendor/symfony/src/Symfony/Bundle',&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; );&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;//to load config files &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; public function registerContainerConfiguration(LoaderInterface $loader)&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // use YAML for configuration&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // comment to use another configuration format&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; $container = new ContainerBuilder();&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; $loader-&amp;gt;load(__DIR__.'/config/config_'.$this-&amp;gt;getEnvironment().'.yml');&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; $container-&amp;gt;setParameter('validator.message_interpolator.class', 'Application\\BlogBundle\\Validator\\NoValidationXliffMessageInterpolator');&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return $container;&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // uncomment to use XML for configuration&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //$loader-&amp;gt;load(__DIR__.'/config/config_'.$this-&amp;gt;getEnvironment().'.xml');&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // uncomment to use PHP for configuration&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; //$loader-&amp;gt;load(__DIR__.'/config/config_'.$this-&amp;gt;getEnvironment().'.php');&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;}&lt;/div&gt;&lt;div style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;meta content="text/html; charset=utf-8" http-equiv="CONTENT-TYPE"&gt;&lt;/meta&gt; 	&lt;title&gt;&lt;/title&gt; 	&lt;meta content="OpenOffice.org 3.2  (Linux)" name="GENERATOR"&gt;&lt;/meta&gt; 	&lt;style type="text/css"&gt;	&lt;!--		@page { margin: 2cm }		P { margin-bottom: 0.21cm }	--&gt;	&lt;/style&gt;  &lt;br /&gt;&lt;div align="LEFT" style="margin-bottom: 0cm;"&gt;i think the above is self explanatory.&lt;/div&gt;&lt;div align="LEFT" style="margin-bottom: 0cm;"&gt;Now we go to the autoload.php.&amp;nbsp;&lt;/div&gt;&lt;div align="LEFT" style="margin-bottom: 0cm;"&gt;[continue]&lt;/div&gt;&lt;div align="LEFT" style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;a href="http://github.com/roydonstharayil/sugarbox/"&gt;&lt;/a&gt; &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6432518326626939442-8054887038544253937?l=symfony2easy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://symfony2easy.blogspot.com/feeds/8054887038544253937/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://symfony2easy.blogspot.com/2010/08/sugarbox.html#comment-form' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6432518326626939442/posts/default/8054887038544253937'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6432518326626939442/posts/default/8054887038544253937'/><link rel='alternate' type='text/html' href='http://symfony2easy.blogspot.com/2010/08/sugarbox.html' title='sugarbox'/><author><name>Don</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_2Iuvhlfgiy4/THKuSe2Fu5I/AAAAAAAAAXw/TWtqy7YbP34/s72-c/sugarbox2.png' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6432518326626939442.post-8586379575606383722</id><published>2010-08-22T07:50:00.000-07:00</published><updated>2010-08-22T07:50:28.455-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='symfony2'/><category scheme='http://www.blogger.com/atom/ns#' term='symfony2 tutorial'/><title type='text'>symfony2 PR3 released</title><content type='html'>Today symfony2 PR3 sandbox released. Several errors and bugs are fixed. I'm experienced so much errors when i progress through these tutorials. so&amp;nbsp; i stop writing tutorials for a while. Sorry for not updating this blog. Now i'm back with interesting new stuff. please keep in touch .&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6432518326626939442-8586379575606383722?l=symfony2easy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://symfony2easy.blogspot.com/feeds/8586379575606383722/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://symfony2easy.blogspot.com/2010/08/symfony2-pr3-released.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6432518326626939442/posts/default/8586379575606383722'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6432518326626939442/posts/default/8586379575606383722'/><link rel='alternate' type='text/html' href='http://symfony2easy.blogspot.com/2010/08/symfony2-pr3-released.html' title='symfony2 PR3 released'/><author><name>Don</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6432518326626939442.post-131760295145892388</id><published>2010-08-06T00:35:00.000-07:00</published><updated>2010-08-23T10:37:19.093-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='symfony'/><category scheme='http://www.blogger.com/atom/ns#' term='symfony2'/><category scheme='http://www.blogger.com/atom/ns#' term='symfony2 tutorial'/><title type='text'>symfony sugarbox</title><content type='html'>please see new symfony 2 tutorial &lt;a href="http://symfony2easy.blogspot.com/2010/08/sugarbox.html"&gt;here.&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6432518326626939442-131760295145892388?l=symfony2easy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://symfony2easy.blogspot.com/feeds/131760295145892388/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://symfony2easy.blogspot.com/2010/08/symfony-sugarbox.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6432518326626939442/posts/default/131760295145892388'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6432518326626939442/posts/default/131760295145892388'/><link rel='alternate' type='text/html' href='http://symfony2easy.blogspot.com/2010/08/symfony-sugarbox.html' title='symfony sugarbox'/><author><name>Don</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6432518326626939442.post-6831254948105897705</id><published>2010-08-05T08:24:00.000-07:00</published><updated>2010-08-05T08:24:08.690-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='symfony'/><category scheme='http://www.blogger.com/atom/ns#' term='symfony2'/><category scheme='http://www.blogger.com/atom/ns#' term='symfony2 tutorial'/><category scheme='http://www.blogger.com/atom/ns#' term='mongodb'/><category scheme='http://www.blogger.com/atom/ns#' term='mongodb/symfony2'/><title type='text'>Mongodb : Getting wet</title><content type='html'>&lt;div style="margin-bottom: 0cm;"&gt;&lt;u&gt;&lt;br /&gt;&lt;/u&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0cm;"&gt;Mongodb is another database system using the features of RDBMS and key-value stores. It's a non-sql database. All the results display in json format. MongoDB&amp;nbsp;is a scalable document database, which is also open source. In MongoDB there are no tables and rows. You have collections and documents instead. And collections can contain any type of document, it is not limited by the columns or fields like a table. i.e. Mongodb is schemaless. So that you can update with new fields,&lt;/div&gt;&lt;div style="margin-bottom: 0cm;"&gt;without altering the entire structure. In the case of RDBMS you must change the schema.&lt;/div&gt;&lt;div style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0cm;"&gt;Mongodb can be download from here: &lt;a href="http://www.mongodb.org/display/DOCS/Downloads" name="Downloads"&gt;Downloads&lt;/a&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0cm;"&gt;Mongodb installation for unix : &lt;a href="http://www.mongodb.org/display/DOCS/Quickstart+Unix" name="Installation"&gt;Installation&lt;/a&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0cm;"&gt;In this post i'm writing about symfony2+doctrine2-ODM+mongodb&lt;/div&gt;&lt;div style="margin-bottom: 0cm;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0cm;"&gt;doctrine2-ODM (&lt;span style="color: #495a7e;"&gt;&lt;span style="font-family: 'Lucida Grande', verdana, sans-serif;"&gt;&lt;span style="font-size: x-small;"&gt;&lt;span style="font-style: normal;"&gt;&lt;span style="font-weight: normal;"&gt;Doctrine MongoDB Object Document Mapper&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;). You can read more from &lt;a href="http://www.doctrine-project.org/projects/mongodb_odm/1.0/docs/reference/introduction/en#introduction" name="here"&gt;here&lt;/a&gt;.&lt;/div&gt;&lt;div style="margin-bottom: 0cm;"&gt;There is a blog tutorial in &lt;a href="http://www.doctrine-project.org/projects/mongodb_odm/1.0/docs/cookbook/getting-started/en" name="here."&gt;here.&lt;/a&gt; &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6432518326626939442-6831254948105897705?l=symfony2easy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://symfony2easy.blogspot.com/feeds/6831254948105897705/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://symfony2easy.blogspot.com/2010/08/mongodb-getting-wet.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6432518326626939442/posts/default/6831254948105897705'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6432518326626939442/posts/default/6831254948105897705'/><link rel='alternate' type='text/html' href='http://symfony2easy.blogspot.com/2010/08/mongodb-getting-wet.html' title='Mongodb : Getting wet'/><author><name>Don</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6432518326626939442.post-2722788164158451165</id><published>2010-08-05T01:13:00.000-07:00</published><updated>2010-08-05T09:08:14.863-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='symfony'/><category scheme='http://www.blogger.com/atom/ns#' term='symfony2'/><category scheme='http://www.blogger.com/atom/ns#' term='symfony2 tutorial'/><title type='text'>sandbox configuration</title><content type='html'>All the configuration files goes into hello/config folder. The file structure is given below.&lt;br /&gt;&lt;table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style="text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_2Iuvhlfgiy4/TFpxxsp5N6I/AAAAAAAAAXM/5MvF5QEqIRY/s1600/Screenshot-1.png" imageanchor="1" style="margin-left: auto; margin-right: auto;"&gt;&lt;img border="0" height="120" src="http://4.bp.blogspot.com/_2Iuvhlfgiy4/TFpxxsp5N6I/AAAAAAAAAXM/5MvF5QEqIRY/s200/Screenshot-1.png" width="200" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class="tr-caption" style="text-align: center;"&gt;config folder&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;the configuration files written in yaml format. doctrine configurations are done in config.yml. you can do seperate configuration for dev, prod, even for testing.&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: white;"&gt;doctrine configuration:(in config.yml)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: blue;"&gt;&lt;span class="Apple-style-span" style="color: white;"&gt;doctrine.dbal:&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: blue;"&gt;&lt;span class="Apple-style-span" style="color: white;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;driver: &amp;nbsp; PDOMySql&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: blue;"&gt;&lt;span class="Apple-style-span" style="color: white;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;dbname: &amp;nbsp; todo&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: blue;"&gt;&lt;span class="Apple-style-span" style="color: white;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;user: &amp;nbsp; &amp;nbsp; root&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: blue;"&gt;&lt;span class="Apple-style-span" style="color: white;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;password: admin&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: blue;"&gt;&lt;span class="Apple-style-span" style="color: white;"&gt;doctrine.orm: ~&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: blue;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span&gt;&lt;/span&gt;routing.yml&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: blue;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: blue;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: blue;"&gt;&lt;span class="Apple-style-span" style="background-color: blue;"&gt;&lt;span class="Apple-style-span" style="color: white;"&gt;homepage:&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: blue;"&gt;&lt;span class="Apple-style-span" style="color: white;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;pattern: &amp;nbsp;/&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: blue;"&gt;&lt;span class="Apple-style-span" style="color: white;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;defaults: { _controller: FoundationBundle:Default:index }&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: blue;"&gt;&lt;span class="Apple-style-span" style="color: white;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: blue;"&gt;&lt;span class="Apple-style-span" style="color: white;"&gt;hello:&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="Apple-style-span" style="background-color: blue;"&gt;&lt;span class="Apple-style-span" style="color: white;"&gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;resource: HelloBundle/Resources/config/routing.yml&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6432518326626939442-2722788164158451165?l=symfony2easy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://symfony2easy.blogspot.com/feeds/2722788164158451165/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://symfony2easy.blogspot.com/2010/08/sandbox-configuration.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6432518326626939442/posts/default/2722788164158451165'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6432518326626939442/posts/default/2722788164158451165'/><link rel='alternate' type='text/html' href='http://symfony2easy.blogspot.com/2010/08/sandbox-configuration.html' title='sandbox configuration'/><author><name>Don</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_2Iuvhlfgiy4/TFpxxsp5N6I/AAAAAAAAAXM/5MvF5QEqIRY/s72-c/Screenshot-1.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6432518326626939442.post-1588596062737139601</id><published>2010-08-04T02:06:00.000-07:00</published><updated>2010-08-04T02:06:26.595-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='symfony'/><category scheme='http://www.blogger.com/atom/ns#' term='symfony2'/><category scheme='http://www.blogger.com/atom/ns#' term='symfony2 architecture'/><category scheme='http://www.blogger.com/atom/ns#' term='symfony2 tutorial'/><title type='text'>The Architecture</title><content type='html'>Today we going to understand the directory structure, basic routing,controller-view actions etc.&lt;br /&gt;&lt;a href="http://3.bp.blogspot.com/_2Iuvhlfgiy4/TFktPW9KzUI/AAAAAAAAAXE/hQpOdZsOVbI/s1600/Screenshot.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="320" src="http://3.bp.blogspot.com/_2Iuvhlfgiy4/TFktPW9KzUI/AAAAAAAAAXE/hQpOdZsOVbI/s320/Screenshot.png" width="166" /&gt;&lt;/a&gt;&lt;br /&gt;This is the basic directory structure of symfony 2 sandbox.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6432518326626939442-1588596062737139601?l=symfony2easy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://symfony2easy.blogspot.com/feeds/1588596062737139601/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://symfony2easy.blogspot.com/2010/08/architecture.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6432518326626939442/posts/default/1588596062737139601'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6432518326626939442/posts/default/1588596062737139601'/><link rel='alternate' type='text/html' href='http://symfony2easy.blogspot.com/2010/08/architecture.html' title='The Architecture'/><author><name>Don</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_2Iuvhlfgiy4/TFktPW9KzUI/AAAAAAAAAXE/hQpOdZsOVbI/s72-c/Screenshot.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6432518326626939442.post-2483423636805197453</id><published>2010-08-03T09:15:00.000-07:00</published><updated>2010-08-04T01:33:20.822-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='symfony'/><category scheme='http://www.blogger.com/atom/ns#' term='symfony2'/><category scheme='http://www.blogger.com/atom/ns#' term='symfony2 tutorial'/><title type='text'>Introduction</title><content type='html'>This blog is dedicated to symfony2 web development. i intend to post a series of tutorials for using symfony2 in real web apps.&lt;br /&gt;&lt;br /&gt;There is a support group here &lt;a href="http://groups.google.com/symfony2easy"&gt;&lt;/a&gt;&lt;br /&gt;My codes are here &lt;a href="http://github.com/symfony2easy"&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6432518326626939442-2483423636805197453?l=symfony2easy.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://symfony2easy.blogspot.com/feeds/2483423636805197453/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://symfony2easy.blogspot.com/2010/08/introduction.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6432518326626939442/posts/default/2483423636805197453'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6432518326626939442/posts/default/2483423636805197453'/><link rel='alternate' type='text/html' href='http://symfony2easy.blogspot.com/2010/08/introduction.html' title='Introduction'/><author><name>Don</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry></feed>
