Desenvolvimento Web - PowerPoint PPT Presentation

1 / 30
About This Presentation
Title:

Desenvolvimento Web

Description:

Desenvolvimento Web Dono do blog cria post l , modifica, apaga posts l , apaga coment rios de outros usu rios Usu rio l posts de um blog cria coment rio para ... – PowerPoint PPT presentation

Number of Views:83
Avg rating:3.0/5.0
Slides: 31
Provided by: ramo120
Category:

less

Transcript and Presenter's Notes

Title: Desenvolvimento Web


1
Desenvolvimento Web
2
Hipertexto
  • Texto em formato digital
  • Acesso por meio de hiperlinks
  • Interconecta conjunto de informação
  • Sistema baseado em Hipertexto mais conhecido
    World Wide Web

3
Cliente-Servidor
  • Clientes
  • Enviam requisições para servidores e aguarda por
    resposta
  • Servidores
  • Oferecem algum serviço, processam a requisição e
    retornam o resultado

4
HTTP
  • HyperText Transfer Protocol
  • Protocolo responsável pelo tratamento de pedidos
    e respostas entre cliente e servidor na WWW
  • Dados são codificados e encapsulados no corpo da
    mensagem e enviados ao servidor
  • Text/plain, text/gif, text/jpeg, etc..
  • Métodos
  • GET
  • POST
  • (Exemplo)

5
MVC
  • Princípio que divide/estrutura a aplicação em
    três entidades distintas que interagem entre si
  • Separação
  • Dados e Lógica de negócio (Model)
  • Layout / Visualização(View)
  • Controller
  • Intermedia Model e View

6
MVC
  • Model
  • Representa as entidades do domínio da aplicação
  • View
  • Interface de usuário
  • Visualização dos dados
  • Controller
  • Processa eventos disparados pelos usuários
  • Recebe requisição do usuário

7
MVC
8
MVC
9
Rails
10
O que é?
  • Meta-Framework/Framework cujo foco é
    desenvolvimento de aplicações web
  • Estrutura base das aplicações segue MVC
  • Linguagem utilizada Ruby

11
Objetivo
  • Introdução Rails
  • Desenvolver ao longo da aula o exemplo que
    promete construir um blog em 15 minutos

12
Requisitos Aplicação
  • Dono do blog
  • cria post
  • lê, modifica, apaga posts
  • lê, apaga comentários de outros usuários
  • Usuário
  • lê posts de um blog
  • cria comentário para um post
  • lê comentários, apaga seus próprios comentários

13
Iniciando
  • rails blog
  • Comando rails gera esqueleto da aplicação
  • Estrutura da aplicação
  • app componentes (controllers/views/model)
  • config database.yml
  • public arquivos css, javascript, imagens,
    uploads
  • Levantando a aplicação (localhost3000)
  • script/server

14
Criando Primeira Tabela
  • script/generate model post
  • generate script para gerar estrutura
  • model indica tipo da estrutura
  • post nome do objeto
  • Pasta db/migrate
  • self.up gt fazer alterações
  • sef.down gt desfazer alteração

15
Criando Primeira Tabela
  • self.up
  • create_table posts do t
  • t.string title
  • t.stringbody
  • t.timestamps
  • end
  • self.down
  • drop_table posts

16
Criando Primeira Tabela
  • rake dbmigrate
  • rake similar ao MakeFile
  • Aplica a migração no banco de dados

17
Criando Primeira Tabela
  • script/console
  • Post.create(titlegtteste, bodygtteste)
  • Post.find(all)
  • P Post.find(1)
  • P.destroy

18
Criando Primeiro Controller
  • script/generate controller posts
  • Testando
  • localhost3000/posts
  • Em app\controllers\posts_controller.rb
  • def index
  • end
  • Tentando novamente

19
Criando Primeiro Controller
  • app\views\posts\index.rhtml
  • lth1gtListando Postslt/h1gt
  • lttablegt
  • lttrgt
  • ltthgtTitulolt/thgt
  • ltthgtConteudolt/thgt
  • lt/trgt
  • lt/tablegt
  • Tentando novamente

20
Criando Primeiro Controller
  • Listando Posts
  • def index
  • _at_posts Post.find(all)
  • End
  • Na view index.rhtml Iterando
  • lt _at_posts.each do p gt
  • lttrgtlttdgtltp.titlegtlt/tdgt
  • lttdgtltp.bodygtlt/tdgt lt/trgt
  • lt end gtlt/tablegt

21
Criando Posts
  • Adicionando links
  • ltpgt
  • lt link_to Nova Postagem", action gt new gt
  • lt/pgt
  • Clicando no link .
  • Deve-se registrar action new, assim como new.rhtml

22
Criando Posts
  • Criando o formulário
  • lt form_tag action gt 'create' dogt
  • Titulo lt text_field post,titlegtltbr /gt
  • Mensagem lt text_field post, bodygtltbr /gt
  • lt submit_tag 'Criar'gt
  • lt end gt
  • lt link_to 'Voltar', action gt index gt

23
Criando Posts
  • Criando create
  • def create
  • post Post.new
  • post.attributes paramspost
  • post.save
  • redirect_to action gt 'index'
  • end

24
Editando Posts
  • Inserindo link para editar
  • lttdgtlt link_to "Editar", action gt "edit", id
    gt p.id gtlt/tdgt
  • Inserindo action edit
  • _at_post Post.find(paramsid)

25
Editando Posts
  • Criando View de edição
  • lt form_tag id gt _at_post, action gt 'update'
    dogt Titulo lt text_field post,titlegtltbr
    /gt Mensagem lt text_field post,bodygtltbr
    /gt lt submit_tag 'Salvar'gt
  • lt end gt

26
Editando Posts
  • Definindo action update
  • def update
  • _at_post Post.find(paramsid)
  • _at_post.attributes paramspost
  • _at_post.save
  • redirect_to action gt 'index'
  • end

27
Situação atual
  • Temos um blog com funcionalidades de listar,
    inserir e editar um post.
  • Pode-se ver o quão produtivo é se trabalhar com
    Rails

28
Exercício
  • Implementar os requisitos que não foram
    finalizados Slides 12
  • Atividade em Dupla
  • Sem uso de scaffold
  • Pesquisar sobre registrar o usuário logado na
    sessão, relacionamentos entre entidades no Rails
  • Utilizar Sqlite3
  • Reflita sobre as entidades e relacionamentos
    entre elas

29
Referências
  • Tutorial Rails para sua diversão e lucro
  • http//api.rubyonrails.org/classes/ActionView/Help
    ers/FormTagHelper.html
  • Vídeo de Terceiro sobre Rails - Lab. Eng.
    Software
  • http//app.dcc.ufba.br/terceiro/matb14/

30
Equipes
  • Leandro e Ivan
  • Roberto e Jandson
  • Paulo e Paulo
  • Lorena e Manuel
  • Leonardo e Matheus
  • Caíque e Ademilson
  • Adnilson e Fabrício
  • Ítalo e Arleson
  • Fagner e Naíla
  • Felipe e Joás
Write a Comment
User Comments (0)
About PowerShow.com