Aplicativos em PHP/FrameWorks/Symfony: diferenças entre revisões
[edição não verificada] | [edição não verificada] |
Conteúdo apagado Conteúdo adicionado
Nova página: {{Info/Software | nome = Symfony | logo = | imagem = 250px | legenda = Projeto padrã... |
Sem resumo de edição |
||
Linha 45:
[[it:Symfony]]
[[ru:Symfony]]
Meu primeiro projeto com Symfony
Resumo do tutorial "My first symfony project" do site oficial.
- Certifique-se de que está usando PHP5
- Ative o suporte a SQLite no php.ini, descomentando a "extensão extension=php_sqlite.dll"
- Fazer o download do sf_sandbox de http://www.symfony-project.com/get/sf_sandbox.tgz e descompactar
no diretório web
- Abra no navegador http://localhost/sf_sandbox/web/index.php para testar.
- Inicializar o modelo de dados:
Edite o script sf_sandbox/config/schema.yml e cole as linhas abaixo
propel:
weblog_post:
_attributes: { phpName: Post }
id:
title: varchar(255)
excerpt: longvarchar
body: longvarchar
created_at:
weblog_comment:
_attributes: { phpName: Comment }
id:
post_id:
author: varchar(255)
email: varchar(255)
body: longvarchar
created_at:
Caso queira traduzir, fique à vontade com exceção de created_at.
Este script define a estrutura de duas tabelas que serão criadas com o SGBD SQLite.
Obs.: Para facilitar adicione o diretório do seu PHP ao path.
Obs2.: Se usando o Xampp 1.6.2 e receber mensagens de erro ao executar o comando php, então
comente a linha com a extensão ";extension=php_svn.dll" no arquivo xampp\php\php.ini.
Salve o arquivo e abra o prompt de comando no diretório sf_sandbox e execute:
php symfony propel-build-model
Esteja certo de estar no raiz do diretório "sf_sandbox". Este comando criará algumas classes no
diretório sf_sandbox/lib/model. Estas classes permitem acesso ao banco sem se digitar uma linha de código SQL.
Symfony usará a biblioteca Propel para isso. Chamaremos estes objetos de model.
Agora entre o seguinte comando:
php symfony propel-build-sql
Um arquivo lib.model.schema.sql será criado em sf_sandbox/data/sql/. Podemos criar um banco em outro SGBD mas
por default o projeto sf_sandbox deve usar o arquivo sandbox.db em sf_sandbox/data.
Para criar a estrutura das tabelas baseadas no arquivo SQL, entre:
php symfony propel-insert-sql
Criando a Aplicação
O symfony agora criará uma estrutura básica de um CRUD da aplicação que poderá ser sustomizado.
php symfony propel-generate-crud frontend post Post
php symfony propel-generate-crud frontend comment Comment
php symfony clear-cache
Agora temos dois módulos (pos e comment) que permitirão que você manipule os objetos das classes
Post e Comment. Um módulo geralmente representa uma página ou um grupo de páginas com uso similar.
Seus novos módulos estão localizados em sf_sandbox/apps/frontend/modules/ e podem ser acessados
através das URLs:
http://localhost/sf_sandbox/web/frontend_dev.php/post
http://localhost/sf_sandbox/web/frontend_dev.php/comment
Veja que não digitamos nenhuma linha de código PHP, nem SQL nem sequer trabalhamos com SGBD.
Claro que aqui tem somente o esqueleto mas mesmo assim a ferramenta já nos deu ganho de produtividade.
|