Frecciarossa a Milano Centrale

TAV For Rails

Ti fa partire più in fretta

Paolo Montrasio
paolopaolomontrasio.com

Questa presentazione è a
connettiva.eu/tav_for_rails

Sondaggio

Vuoi creare un progetto Rails?

C'è tanto lavoro da fare!

restful_authentication?

mongrel_rails start

Ah già!

Si sbaglia e si perde tempo

La soluzione: i Templates

gem "will_paginate", :source => "http://gemcutter.org"
gem "tzinfo"
gem "rubyist-aasm", :lib => "aasm"
rake("gems:install", :sudo => true)
plugin "restful_authentication",
  :git => "git://github.com/technoweenie/restful-authentication.git"
run './script/generate authenticated user session \
  --include-activation --aasm --rspec'
environment "config.active_record.observers = :user_observer"
rake("db:create") # ma c'è lo user?  
rake("db:migrate")

Tuttavia

La soluzione fai da te

TAV For Rails

require "tav_for_rails"
include TavForRails
rails = TavForRails::Project.create("mycoolproject",
                         :database => "postgresql")
rails.add "WillPaginate"
rails.add "Aasm"
rails.add "TzInfo"
rails.install_gems
rails.add "RestfulAuthentication"

Magia!

Stato del progetto

Esempio di API: add "RestfulAuthentication"

class RestfulAuthentication
  def add(args = "")
    Utils.git_clone("git://github.com/technoweenie/restful-authentication.git 
                     restful_authentication", :directory => "vendor/plugins")
    Utils.generate("authenticated user sessions --include-activation --stateful
                    --aasm #{args}")
    Utils.add_routes("  map.activate '/activate/:activation_code',
         :controller => 'users', :action => 'activate', :activation_code => nil\n
         map.resources :users, :member => { :suspend => :put, :unsuspend => :put,
         :purge => :delete }")
    Utils.db_migrate
    Utils.add_to_rails_initializer("  config.active_record.observers = :user_observer")
    Utils.copy_to_lib("restful_authentication", "authenticated_system.rb")
    Utils.add_to_application_controller("  include AuthenticatedSystem")
  end
end

Wishlist

Volontari per partire? ETR500 in uscita da Milano Centrale

Riferimenti