71. Controller
class UsersController < Spree::BaseController
resource_controller
before_filter :initialize_extension_partials
actions :all, :except => [:index, :destroy]
show.before do
@orders = Order.checkout_completed(true)
.find_all_by_user_id(current_user.id)
end
create.after { self.current_user = @user }
create.response do |wants|
wants.html { redirect_back_or_default(products_path) }
end
end
Wednesday, April 8, 2009
72. Controller
class UsersController < Spree::BaseController
resource_controller
before_filter :initialize_extension_partials
actions :all, :except => [:index, :destroy]
show.before do
@orders = Order.checkout_completed(true)
/users/1
.find_all_by_user_id(current_user.id)
end
create.after { self.current_user = @user }
create.response do |wants|
wants.html { redirect_back_or_default(products_path) }
end
end
Wednesday, April 8, 2009
73. Rotas RESTFul
ActionController::Routing::Routes.draw do |map|
map.connect ':controller/service.wsdl', :action => 'wsdl'
map.resources :products,
:member => {:change_image => :post}
map.resources :addresses
map.resources :orders,
:has_many => [:line_items]
map.namespace :admin do |admin|
admin.resources :users
admin.resources :products
end
end
Wednesday, April 8, 2009
74. Rotas RESTFul
ActionController::Routing::Routes.draw do |map|
GET /products/new
map.connect ':controller/service.wsdl', :action => 'wsdl'
GET /products
map.resources :products,
POST /products
:member => {:change_image => :post}
GET /products/1
map.resources :addresses
map.resources :orders,
GET /products/1/edit
:has_many => [:line_items]
PUT /products/1
map.namespace :admin do |admin|
DESTROY /products/1
admin.resources :users
admin.resources :products
end
end
Wednesday, April 8, 2009
75. Migrations
class RenameAppConfiguration < ActiveRecord::Migration
def self.up
rename_table :app_configurations, :configurations
change_table :configurations do |t|
t.string :type
end
end
def self.down
change_table :configurations do |t|
t.remove :type
end
rename_table :configurations, :app_configurations
end
end
Wednesday, April 8, 2009
76. Migrations
class RenameAppConfiguration < ActiveRecord::Migration
def self.up
rename_table :app_configurations, :configurations
change_table :configurations do |t|
t.string :type
end
rake db:migrate
end
def self.down
change_table :configurations do |t|
t.remove :type
end
rename_table :configurations, :app_configurations
end
end
Wednesday, April 8, 2009
77. RSpec
describe Product do
include ProductSpecHelper
before(:each) do
@product = Product.new
end
it quot;should not be valid when emptyquot; do
@product.should_not be_valid
end
it quot;should be valid when having correct informationquot; do
@product.attributes = valid_product_attributes
@product.should be_valid
end
end
Wednesday, April 8, 2009
78. RSpec
describe Product do
include ProductSpecHelper
before(:each) do
@product = Product.new
end
it quot;should not be valid when emptyquot; do
rake spec
@product.should_not be_valid
end
it quot;should be valid when having correct informationquot; do
@product.attributes = valid_product_attributes
@product.should be_valid
end
end
Wednesday, April 8, 2009
79. Cucumber
Funcionalidade: Criar Post no Blog
Para conseguir divulgar minhas idéias
Como um blogger
Eu quero conseguir criar um post no meu blog
Cenário: Criando um novo Post
Dado que estou na página de Administração
E que eu preencho o formulário de novo post
Então quero conseguir visualizar o título do novo post na homepage
Wednesday, April 8, 2009
93. Para colocar as coisas em
perspectiva, o Friendster foi
escrito em Java no começo, mas
mudou para PHP. O MySpace foi
escrito em ColdFusion e
transicionou para ASP.NET.
Quando as pessoas caem em
problemas de escalabilidade,
costumam pensar sempre que o
problema é a linguagem, mas eu
acho que esse raramente é o
Blaine Cook
caso.
http://www.akitaonrails.com/2008/6/17/chatting-with-blaine-cook-twitter
Wednesday, April 8, 2009
94. “O New York Times usou Ruby on Rails para juntar,
analisar e mostrar resultados das eleições quase em
real time em um dos dias mais congestionados de
tráfego que já se viu. ”
http://www.computerworld.com.au/article/268003/ruby_rails_rolls_into_enterprise?fp=16&fpid=1
Wednesday, April 8, 2009
95. “Eles servem mais de 23 milhões de visitantes por mês. A
conversão resultou em 20 mil linhas de código Ruby em vez de
125 mil de Java, e mais importante, facilitou a dificuldade que
tinham em manter isso. Uma vez finalizado e otimizado o site
deles agora é mais rápido que antes. Eles também finalizaram a
re-escrita em 3 meses com 4 desenvolvedores.”
http://www.railsonwave.com/railsonwave/2008/6/4/yellowpages-com-migrates-to-rails
Wednesday, April 8, 2009