Transcript of Oficial
- 1. Mini-Curso de RubyOnRails Rgis Eduardo Weizenmann Gregol
[email_address]
- 2. Um desenvolvedor no um poltico, no um religioso. Fazer
afirmaes com desconhecimento de causa um atestado de ignorncia Fbio
Akita. Repensando a Web com Rails (2006).
- 3. Ruby != Rails
- 4.
- 5. A Linguagem Criada pelo japons Yukihiro Matsumoto ou Matz em
1995; Dinmica e interpretada; Influenciada por Perl, Lips e
SmallTalk; Em Ruby, tudo objeto; Todas as classes extend de
Object;
- 6. A Linguagem Mtodos retornam valor: puts Hello World =>
nil Operao mtodo: eql, exists, extend
- 7. Caractersticas
- 8. Variveis
-
- @@classe = Classe (static do Java)
- 9. Comparando
- public double soma(double a, double b){
- 10. Instalando o Ruby Windows:
http://rubyforge.org/projects/rubyinstaller Linux: sudo apt-get
install ruby-full Mac OS: sudo gem update --system
- 11. Instalando o Rails Windows: gem install rails Linux: sudo
gem install rails Observao: gem install rails v=3 sudo gem install
rails v=2.2.2
- 12. Instalando Banco de Dados Windows SQlite3:
http://www.sqlite.org/download.html C:system32 dll MySQL:
http://dev.mysql.com/downloads/ Linux: sudo apt-get install
mysql-server
- 13. O framework Surgiu em 2004, criado por Dave Thomas DRY que
significa Don't Repeat Yourself Scaffold (CRUD)
- 14. O framework Arquitetura M-V-C
- 15. O framework Ou meta-framework Composto por: ActiveSupport
ActiveRecord ActionPack ActionMailer ActiveResource
- 16. ActiveSupport Framework que contm colees de diversas
classes; Extenses de bibliotecas consideradas teis para uma aplicao
em Ruby On Rails
- 17. ActiveRecord Considerado um framework que contm uma camada
de mapeamento objeto-relacional, entre a aplicao e o banco de
dados
- 18. ActionPack Framework HTML, XML, Javascripts, e controle de
regras de negcio
- 19. ActionMailer Framework de recebimento de emails, capaz de
realizar diversas operaes apenas com chamadas de entregas de
correspondncia
- 20. ActiveResource
-
- Em si define um pequeno conjunto de operaes, as mais
importantes so POST, GET, PUT e DELETE.
- 21. Servidores e Banco de Dados WEBrick Mongrel Sqlite3 MySQL
Oracle PostgreSQL
- 22. Scripts About: Informao sobre verso e componentes Console:
Console com o ambiente da aplicao Dbconsole: Console padro do banco
de dados Destroy: Remove cdigo gerado
- 23. Generate: Gera o cdigo de uma aplicao Plugin:
Instalar/Desinstalar plugins Runner: Automatizar tarefas da aplicao
Server Inicia o servidor de aplicao Scripts
- 24. Boas Prticas
- 25. Boas Prticas Convenes Modelos gordos Controllers magros
Nomes de classes em ingls: Ex: Cliente = Customer; Tabelas so
classes no plural: Ex: Classe Customer Tabela customers Chave
primria por conveno: Ex: nome_class_id = customers_id
- 26. Criando um Projeto rails new Projeto_Meditec d mysql rails
new 'nome do projeto' d (de database) banco de dados
- 27. Estrutura Projeto
- 28. Estrutura Projeto app: Onde fica os Controllers, Telas e
Modelos config: configuraes da aplicao, banco, etc db: guarda as
migraes, esquemas e arquivos do banco doc: documentao lib :
arquivos de biblioteca log: os logs do servidor rails public:
arquivos externos (css, js, imagens)
- 29. Estrutura Projeto Estrutura Projeto Estrutura Projeto
Estrutura Projeto Estrutura Projeto script: scripts do rails (rails
g, rails s) test: arquivos de teste unitrio, funcional tmp:
arquivos temporrios do servidor, informaes de sesso, cache,
migraes, esquemas e arquivos do banco vendor: onde vai os plugins
para a app Gemfile : diretrio onde requerida as gems
- 30. Gerando um Controller rails generate controller Customer
index new show edit create update destroy
- 31. Gerando um Modelo rails generate model Customer
- 32. Gerando um Scaffold rails generate scaffold Customer
name:string rg:string cpf:string
- 33. Relacionamentos has_many (muitos pra um) Ex: has_many
:contacts belongs_to (um pra muitos) ou (pertence ) Ex: belongs_to
:customers has_and_belongs_to_many (muitos p/ muitos) Ex:
has_and_belongs_to_many :products Ex: has_and_belongs_to_many
:characteristics has_one (um p/ um) Ex: has_one :contacts Ex:
belongs_to :customers
- 34. Migrations Executadas em sequencial; Desenvolvedor
responsvel; 2 tarefas sempre: Realizar alterao, ex:
add_column(:customers, :email, :string); Desfazer alterao, ex:
remove_column(:email);
- 35. Rake Rake db:create Comando para criar a base de dados Rake
db:migrate Comando para migrar a base de dados Rake db:destroy
Comando para destruir a base de dados
- 36. Partials "contacts" %>
- 37. Form_Helpers Abaixo, uma lista dos FormHelpers disponveis:
check_box fields_for file_field form_for hidden_field label
password_field radio_button text_area text_field E uma lista dos
FormTagHelpers: check_box_tag field_set_tag file_field_tag form_tag
hidden_field_tag image_submit_tag password_field_tag
radio_button_tag select_tag submit_tag text_area_tag text_
- 38. Link_to :method => :delete :method => :put Mtodos
HTTP: :confirm => Tem certeza?
- 39. Select
- 40. Datas 1970 %>
- 41. Validaes validates_presence_of validates_uniqueness_of
validates_format_of :email, :with => /^[wd]+$/ :on =>
:create, :message => "e-mail invlido"
- 42. Mensagens de Erro
- 43. Form e Form_Builder { blocos de cdigo; } { blocos de cdigo;
}
- 44. Recomendaes Akita on Rails Carlos Brando => Nome do Jogo
Google Groups => rails-br flails.serviceweb.com
- 45. Curiosidades
- 46. Agradecimentos Rgis Eduardo Weizenmann Gregol
[email_address] https://sites.google.com/site/regiseduardogregol/
http://www.r2rails.com.br/