Bundle Oluştuktan sonra
enttiy oluştur
php bin/console doctrine:generate:entity
WebMuhasebeBundle:Fatura
Sonrasında ilişki kurulacak.
İlişkilerde
/** * @ORM\OneToMany(targetEntity="Ilce", mappedBy="Il", cascade={"persist", "remove"}) */ private $Ilce;
id göndermek için kullanıyoruz. Kendi id sini karşıya entitye gönderiyor.
/** * @ORM\ManyToOne(targetEntity="Il", inversedBy="Ilce") * @ORM\JoinColumn(name="il_id", referencedColumnName="id") */ public $il;
Buradaki karşıdan gelen id kayıt ediyor. (ilden gelen id yi kayıt ediyor)
1 ilin birden fazlası ilçesi olabilir ama bir ilçenin ilçesi olamaz.
İl burada one kısmı ilçe many olur.
işlemler bittikten sonra
php bin/console doctrine:generate:entities WebMuhasebeBundle
php bin/console doctrine:schema:update --force
sonrasında sayfalandırmak için kullanmak için aşagıdaki kodu yazıyoruz
composer require knplabs/knp-paginator-bundle
şeklinde kurunuz
github linki : https://github.com/KnpLabs/KnpPaginatorBundle
Config.yml içerisinde aşagıdaki kodu ekleyiniz:
knp_paginator: page_range: 5 # default page range used in pagination control default_options: page_name: page # page query parameter name sort_field_name: sort # sort field query parameter name sort_direction_name: direction # sort direction query parameter name distinct: true # ensure distinct results, useful when ORM queries are using GROUP BY statements template: pagination: KnpPaginatorBundle:Pagination:sliding.html.twig # sliding pagination controls template sortable: KnpPaginatorBundle:Pagination:sortable_link.html.twig # sort link template
sonrasında user için
composer require friendsofsymfony/user-bundle "~2.0@dev"
şeklinde kurulum yapınız.
Ekle:
<?php // app/AppKernel.php public function registerBundles() { $bundles = array( // ... new FOS\UserBundle\FOSUserBundle(), // ... ); }
Kendi bundlunuze seçip user.php oluşturup
use FOS\UserBundle\Model\User as BaseUser; use Doctrine\ORM\Mapping as ORM; /** * @ORM\Entity * @ORM\Table(name="fos_user") */ class User extends BaseUser { /** * @ORM\Id * @ORM\Column(type="integer") * @ORM\GeneratedValue(strategy="AUTO") */ protected $id; public function __construct() { parent::__construct(); // your own logic } }
içine ekleyin
devamını
http://symfony.com/doc/current/bundles/FOSUserBundle/index.html
adresinden bakabilirsiniz.
a) Doctrine ORM User class
bölümünde
// src/AppBundle/Entity/User.php
kısmında oluşturmuş oldugunuz bundle göre vermeniz gerekmektedir.
İşlemleri bitirdikten sonra crud işlemini yapınız.
Crud Dökümanı
http://symfony.com/doc/current/bundles/SensioGeneratorBundle/commands/generate_doctrine_crud.html
php app/console generate:doctrine:crud
Crud oluşturabilirsiniz.
Oluşturalacak bütün entityler için tek tek yazmanız gerekiyor.
yml yapıyoruz
isim girerkende Örnek WebMuhasebeBundle:fatura
Eğer enitties yeni kuracaksanız kısa yol kullanımı
php bin/console d:g:entities WebAdiBundle:TabloAdi