Projeto Zend Framework 2 + Doctrine 2 Cheat Sheet

Comandos de console em composer, zftool e doctrine tool

10,961 views 3,617 downloads 15 Nov 2014 History
4.9 avg · 1 rating

Criação e instalação

$ zftool.phar create project nome
$ cd nome
$ composer install
$ composer require zendframework/zftool:dev-master
$ composer require doctrine/doctrine-orm-module:0.7.*
$ composer require zendframework/zend-developer-tools:dev-master
$ cp vendor/framework/zend-developer-tools/config/zenddevelopertools.local.php.dist config/autoload/ztd.local.php
$ composer require hounddog/doctrine-data-fixture-module:dev-master
1 - Criação do projeto Zend Framework
2 - Vá para o diretório do projeto
3 - Instalação dos arquivos do ZF2
4 - Instalação do ZFTools para o projeto.
5 - Instalação do Doctrine 2
6 - Instalação do Zend Developer Tools
7 - Copiando o config do ZDT para o projeto.
8 - Instalando modulo de data fixture

Doctrine - comandos

Validar
$ vendor­/bi­n/d­oct­rin­e-m­odule orm:va­lid­ate­-schema
Criar
$ vendor­/bi­n/d­oct­rin­e-m­odule orm:sc­hem­a-t­ool­:create
Atualizar
$ vendor­/bi­n/d­oct­rin­e-m­odule orm:sc­hem­a-t­ool­:update
Drop
$ vendor­/bi­n/d­oct­rin­e-m­odule orm:sc­hem­a-t­ool­:drop
Verificar pronto para subir (Produ­ction enviro­ment)
$ vendor­/bi­n/d­oct­rin­e-m­odule orm:en­sur­e-p­rod­uct­ion­-se­ttings
Criar Entinty
$ vendor­/bi­n/d­oct­rin­e-m­odule orm:ge­ner­ate­-en­tities
Opcionais: --upda­te-­ent­ities ou --rege­ner­ate­-en­tities

Zend Framework Tool - Comandos

Controller
$ zftool.phar create controller nome Application
Action
$ zftool.phar create action nome Controller Application
O comando de criação de action destrói a indentação do arquivo.

Config­urações

{{fa-file-code-o}} **config/application.config.php**
'modules' => array(
        '**ZendDeveloperTools**',
        '**DoctrineModule**',
        '**DoctrineORMModule**',
        'Application',
    ),

{{fa-file-code-o}} **module/Application/config/module.config.php**
'doctrine' => array(
        'driver' => array(
            'application_entities' => array(
                'class' =>'Doctrine\ORM\Mapping\Driver\AnnotationDriver',
                'cache' => 'array',
                'paths' => array(__DIR__ . '/../src/Application/Entity')
                ),
        'orm_default' => array(
            'drivers' => array('Application\Entity' => 'application_entities')
            )
        )
    )

{{fa-file-code-o}} **config/autoload/doctrine.local.php**
return array(
		'doctrine' => array(
			'connection' => array(
				'orm_default' => array(
					'driverClass' =>'Doctrine\DBAL\Driver\PDOMySql\Driver',
					'params' => array(
						'host'     => 'localhost',
						'port'     => '3306',
						'user'     => **'usuario'**,
						'password' => **'senha'**,
						'dbname'   => **'database'**
					)))));
Adicionar os modulos ZendDe­vel­ope­rTools (Para depuração), Doctri­neM­odule e Doctri­neO­RMM­odule.

Tweak no Route

*Para o module Application funcionar como base*
'application' => array(
                'type'    => '**Segment**', {{fa-exclamation}}
                'options' => array(
                    'route'    => '**[]**', {{fa-exclamation}}
                    'defaults' => array(
                        '__NAMESPACE__' => 'Application\Controller',
                        'controller'    => 'Index',
                        'action'        => 'index',
                    ),
                ),
                'may_terminate' => true,
                'child_routes' => array(
                    'default' => array(
                        'type'    => 'Segment',
                        'options' => array(
                            'route'    => '/[:controller[/:action]]',
                            'constraints' => array(
                                'controller' => '[a-zA-Z][a-zA-Z0-9_-]*',
                                'action'     => '[a-zA-Z][a-zA-Z0-9_-]*',
                            ),
                            'defaults' => array(
                            ),
                        ),
                    ),
                ),
            ),
type: Literal Segment
route: "­/ap­pli­cat­ion­" "­[]"

Badges

Nice Cheat Sheet Good Cheat Sheet Downloaded from Unusual Locations × 1

Comments

No comments yet.

Cheatography n. The art of mapping complex subjects into clear, instantly navigable reference guides.