Rails top features
-
Upload
eduardo-veras -
Category
Software
-
view
93 -
download
0
Transcript of Rails top features
Algunas personas piensan que es
demasiado..."1".to_i
#=> 1
class String
def to_i
raise 'foobar'
end
end
"1".to_i
#=> RuntimeError: foobar
class String
def to_i
self.to_f - 1.13
end
end
"2".to_i
#=> 0.8700000000000001
class User < ActiveRecord::Basedevise :database_authenticatable, :registerable
validates_numericality_of :years_of_experience, :allow_blank => true
acts_as_taggableacts_as_taggable_on :certificates, :expertise_kinds
validates_presence_of :first_name, :last_name, :email
has_many :translations
has_attached_file :avatar, :styles => {:small => "240x240>"}has_attached_file :cv
Manejo de dependencias integrado,
elegante y sencillo
TOTAL GEMS
127,111
TOTAL USERS
108,518
TOTAL DOWNLOADS
11,254,913,884
Problem? Integrado? Hay gema? Gema/s
Paginación N/A Si Kaminari, will_paginate
Autenticación Si Device, Authlogic, Omniauth
Autorización Si CanCan
Test auto-generados Si Shoulda
Dependency-Management Si Si Bundler
Background-jobs N/A Si Resque, sidekiq, delayed_job
Minificar JS y CSS Si Jammit
Simular interaction real usuarios Si capybara
ecommerce Si Active Merchant
Deployment Si Si Passenger,
Better error management Si Si Better_errors
Email management Si Si Letter_opener,
Everything else Probably
Scopingclass Shirt < ActiveRecord::Base
named_scope :red, :conditions => {:color => 'red'}
named_scope :dry_clean_only, :joins =>
:washing_instructions,:conditions
=> ['washing_instructions.dry_clean_only = ?', true]
end
Si llamamos Shirt.red esto hara un query a la base de datos con la condicion "color = 'red'"
La parte genial es que si combinamos mas de un parámetro ej:
Shirt.red.dry_clean_only
este va a construir un solo query, con todas las condiciones y todos los joins necesarios en la base de
datos.
Generar una app completa con 3
lineas de codigo
rails generate scaffold Game name:string
rails generate scaffold HighScore game:references score:integer
rails db:migrate
1. Performance (Fixed with ruby 3)
2. Aplicaciones/bases de datos existentes3. Requires extensive code-review4. Tal Vez pierda popularidad en el futuro5. NO es para principiantes (demasiada magia)