Bundle for shortening urls
Symfony 2 bundle for shortening urls., (*1)
Add ToffiakURLShortenerBundle in your composer.json:, (*2)
{ "require": { "toffiak/urlshortener-bundle": "1.0.*@dev" }, "repositories": [ { "type": "vcs", "url": "https://github.com/toffiak/URLShortenerBundle" } ], }
Download the bundle by running the command:, (*3)
``` bash $ php composer.phar update toffiak/urlshortener-bundle, (*4)
### Step 2: Enable the bundle Enable the bundle in the kernel: ``` php <?php // app/AppKernel.php public function registerBundles() { $bundles = array( // ... new Toffiak\URLShortenerBundle\ToffiakURLShortenerBundle(), ); }
``` php <?php // src/Acme/URLShortenerBundle/Entity/Link.php, (*5)
namespace Acme\URLShortenerBundle\Entity;, (*6)
use Doctrine\ORM\Mapping as ORM; use Toffiak\URLShortenerBundle\Entity\Link as BaseLink;, (*7)
/** * @ORM\Entity * @ORM\Table(name="toffiak_urlshortener_link") */ class Link extends BaseLink {, (*8)
/** * @ORM\Id * @ORM\Column(type="integer") * @ORM\GeneratedValue(strategy="AUTO") */ protected $id;
}, (*9)
### Step 4: Create Link manager class ``` php <?php // src/Acme/URLShortenerBundle/Model/Manager/LinkManager.php namespace Acme\URLShortenerBundle\Model\Manager; use Toffiak\URLShortenerBundle\Model\Manager\LinkManager as BaseLinkManager; class LinkManager extends BaseLinkManager { }
``` yaml, (*10)
toffiak_url_shortener: link: class: Acme\URLShortenerBundle\Entity\Link manager_class: Acme\URLShortenerBundle\Model\Manager\LinkManager, (*11)
### Step 6: Import ToffiakURLShortenerBundle routing files In YAML: ``` yaml # app/config/routing.yml toffiak_urlshortener: resource: "@ToffiakURLShortenerBundle/Resources/config/routing.yml" prefix: /
bash
$ php app/console doctrine:schema:update --force
, (*12)