railties @ encontro guru sc (nao apresentado) - 2010.09.18

22
Carlos Antonio @cantoniodasilva blog.plataformatec.com.br RAILTIES OU COMO DESENVOLVER PLUGINS/GEMS PARA RAILS Sunday, November 6, 11

Upload: carlos-antonio-da-silva

Post on 12-Jul-2015

392 views

Category:

Technology


1 download

TRANSCRIPT

Page 1: railties @ encontro guru sc (nao apresentado) - 2010.09.18

Carlos Antonio @cantoniodasilvablog.plataformatec.com.br

RAILTIESOU

COMO DESENVOLVER PLUGINS/GEMS PARA RAILS

Sunday, November 6, 11

Page 2: railties @ encontro guru sc (nao apresentado) - 2010.09.18

Carlos Antonio @cantoniodasilvablog.plataformatec.com.br

$ WHOAMI

Sunday, November 6, 11

Page 3: railties @ encontro guru sc (nao apresentado) - 2010.09.18

Carlos Antonio @cantoniodasilvablog.plataformatec.com.br

CARLOS ANTONIO DA SILVA

@cantoniodasilva

Sunday, November 6, 11

Page 4: railties @ encontro guru sc (nao apresentado) - 2010.09.18

Carlos Antonio @cantoniodasilvablog.plataformatec.com.br

BSI NA UNIDAVI - RIO DO SUL

GP NO SENAC - RIO DO SUL/FLORIANÓPOLIS

Sunday, November 6, 11

Page 5: railties @ encontro guru sc (nao apresentado) - 2010.09.18

Carlos Antonio @cantoniodasilvablog.plataformatec.com.br

TRABALHO NA

Sunday, November 6, 11

Page 6: railties @ encontro guru sc (nao apresentado) - 2010.09.18

Carlos Antonio @cantoniodasilvablog.plataformatec.com.br

DEVISE

Sunday, November 6, 11

Page 7: railties @ encontro guru sc (nao apresentado) - 2010.09.18

Carlos Antonio @cantoniodasilvablog.plataformatec.com.br

SIMPLE_FORM

Sunday, November 6, 11

Page 8: railties @ encontro guru sc (nao apresentado) - 2010.09.18

Carlos Antonio @cantoniodasilvablog.plataformatec.com.br

RESPONDERS

Sunday, November 6, 11

Page 9: railties @ encontro guru sc (nao apresentado) - 2010.09.18

Carlos Antonio @cantoniodasilvablog.plataformatec.com.br

Railties

WTF???

Sunday, November 6, 11

Page 10: railties @ encontro guru sc (nao apresentado) - 2010.09.18

Carlos Antonio @cantoniodasilvablog.plataformatec.com.br

Railties

WTF???WTF???

Sunday, November 6, 11

Page 11: railties @ encontro guru sc (nao apresentado) - 2010.09.18

Carlos Antonio @cantoniodasilvablog.plataformatec.com.br

RailtiesWTF???

Application

Initialization

Engine

Generators

Sunday, November 6, 11

Page 12: railties @ encontro guru sc (nao apresentado) - 2010.09.18

Carlos Antonio @cantoniodasilvablog.plataformatec.com.br

RailtiesWTF???

Application

Initialization

Engine

Generators

HOOKSSunday, November 6, 11

Page 13: railties @ encontro guru sc (nao apresentado) - 2010.09.18

Carlos Antonio @cantoniodasilvablog.plataformatec.com.br

Railties

WTF???

HooksGENERATORS

module FooBar class Railtie < Rails::Railtie

config.generators.orm = :foo_bar

endend

Sunday, November 6, 11

Page 14: railties @ encontro guru sc (nao apresentado) - 2010.09.18

Carlos Antonio @cantoniodasilvablog.plataformatec.com.br

Railties

WTF???

HooksRAKE TASKS

module FooBar class Railtie < Rails::Railtie

rake_tasks do load 'foo_bar/foo.rake' end

endend

Sunday, November 6, 11

Page 15: railties @ encontro guru sc (nao apresentado) - 2010.09.18

Carlos Antonio @cantoniodasilvablog.plataformatec.com.br

Railties

WTF???

HooksINIT

module FooBar class Railtie < Rails::Railtie

# initialization hooks config.before_configuration {} config.before_eager_load {} config.before_initialize {} config.after_initialize {} config.to_prepare {}

endend

Sunday, November 6, 11

Page 16: railties @ encontro guru sc (nao apresentado) - 2010.09.18

Carlos Antonio @cantoniodasilvablog.plataformatec.com.br

Railties

WTF???

HooksINIT

module FooBar class Railtie < Rails::Railtie

initializer 'foo_bar.do_whatever' do |app| puts "I'm initializing!" # load your stuff here end

endend

Sunday, November 6, 11

Page 17: railties @ encontro guru sc (nao apresentado) - 2010.09.18

Carlos Antonio @cantoniodasilvablog.plataformatec.com.br

WTF???

FRAMEWORK LOADING

ActiveSupport.on_load(:active_record) do include FooBar::ActiveRecordExtensions end

Sunday, November 6, 11

Page 18: railties @ encontro guru sc (nao apresentado) - 2010.09.18

Carlos Antonio @cantoniodasilvablog.plataformatec.com.br

E O QUE EU FAÇO COM ESSE NEGÓCIO DE

FRAMEWORK LOADING?

Sunday, November 6, 11

Page 19: railties @ encontro guru sc (nao apresentado) - 2010.09.18

Carlos Antonio @cantoniodasilvablog.plataformatec.com.br

Railties

WTF???

HooksINIT

module FooBar class Railtie < Rails::Railtie

initializer 'foo_bar.do_whatever' do |app| ActiveSupport.on_load(:active_record) do include FooBar::ActiveRecordExtensions end end

endend

Sunday, November 6, 11

Page 20: railties @ encontro guru sc (nao apresentado) - 2010.09.18

Carlos Antonio @cantoniodasilvablog.plataformatec.com.br

EXEMPLO REAL???

Sunday, November 6, 11

Page 21: railties @ encontro guru sc (nao apresentado) - 2010.09.18

Carlos Antonio @cantoniodasilvablog.plataformatec.com.br

WTF???

module Responders autoload :FlashResponder, 'responders/flash_responder' autoload :HttpCacheResponder, 'responders/http_cache_responder' autoload :CollectionResponder, 'responders/collection_responder'

require 'responders/controller_method'

class Railtie < ::Rails::Railtie config.responders = ActiveSupport::OrderedOptions.new config.generators.scaffold_controller = :responders_controller

# Add load paths straight to I18n, so engines and application can overwrite it. require 'active_support/i18n' I18n.load_path << File.expand_path('../responders/locales/en.yml', __FILE__)

initializer "responders.flash_responder" do |app| if app.config.responders.flash_keys Responders::FlashResponder.flash_keys = app.config.responders.flash_keys end end endend

Sunday, November 6, 11

Page 22: railties @ encontro guru sc (nao apresentado) - 2010.09.18

@cantoniodasilva

blog.plataformatec.com.br

Obrigado!

?!

Sunday, November 6, 11