Carregar apresentação
A apresentação está carregando. Por favor, espere
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 Servidores
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 (Exemplo)
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 View Controller
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 Usuário 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 Estrutura da aplicação
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 (localhost:3000) % 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 => fazer alterações sef.down => desfazer alteração
15
Criando Primeira Tabela
self.up create_table :posts do |t| t.string :title t.string:body t.timestamps end self.down drop_table : posts
16
Criando Primeira Tabela
% rake db:migrate rake: similar ao MakeFile Aplica a migração no banco de dados
17
Criando Primeira Tabela
script/console Post.create(:title=>’teste’, :body=>’teste’) Post.find(:all) P = Post.find(1) P.destroy
18
Criando Primeiro Controller
% script/generate controller posts Testando: localhost:3000/posts Em app\controllers\posts_controller.rb def index end Tentando novamente
19
Criando Primeiro Controller
app\views\posts\index.rhtml <h1>Listando Posts</h1> <table> <tr> <th>Titulo</th> <th>Conteudo</th> </tr> </table> Tentando novamente
20
Criando Primeiro Controller
Listando Posts def index @posts = Post.find(:all) End Na view index.rhtml – Iterando do |p| %> <tr><td><%=p.title%></td> <td><%=p.body%></td> </tr> <% end %></table>
21
Criando Posts Adicionando links <p>
<%= link_to “Nova Postagem", :action => “new” %> </p> Clicando no link …. Deve-se registrar action new, assim como new.rhtml
22
Criando Posts Criando o formulário:
<% form_tag :action => 'create' do%> Titulo: <%= text_field :post,:title%><br /> Mensagem: <%= text_field :post, :body%><br /> <%= submit_tag 'Criar'%> <% end %> <%= link_to 'Voltar', :action => ‘index’ %>
23
Criando Posts Criando create: def create post = Post.new
post.attributes = params[:post] post.save redirect_to :action => 'index' end
24
Editando Posts Inserindo link para editar:
<td><%= link_to "Editar", :action => "edit", :id => p.id %></td> Inserindo action edit: @post = Post.find(params[:id])
25
Editando Posts Criando View de edição:
<% form_tag :id :action => 'update' do%> Titulo: <%= text_field :post,:title%><br /> Mensagem: <%= text_field :post,:body%><br /> <%= submit_tag 'Salvar'%> <% end %>
26
Editando Posts Definindo action update: def update
@post = Post.find(params[:id]) @post.attributes = params[:post] @post.save redirect_to :action => '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”
Helpers/FormTagHelper.html Vídeo de Terceiro sobre Rails - Lab. Eng. Software
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
Apresentações semelhantes
© 2024 SlidePlayer.com.br Inc.
All rights reserved.