BusinessBase per la creazione rapida di applicazioni Rails
Nel puro spirito “release early, release often”, è stato appena distribuito BusinessBase, un insieme di librerie e di generatori di codice per progetti Ruby on Rails che offre una serie di funzionalità standard per la scrittura della propria applicazione Rails. Il tutto made in italy.
Installazione
Il pacchetto è per ora disponibile come gem da scaricare dal repository offerto da Google Code; per procedere all’installazione è quindi necessario:
- Scaricare il file da questa pagina e salvarlo in una cartella
- Aprire il prompt dei comandi e posizionarsi nella cartella in cui si è salvato il file
- Digitare
gem install business_base_generatorper procedere all’installazione
Ora BusinessBase è disponibile sul proprio sistema pronto per essere utilizzato da qualsiasi applicazione. Creiamo un’applicazione ad hoc per testare le funzionalità di BusinessBase:
rails bbdiscovery
Creiamo i database bbdiscovery_development e bbdiscovery_test e configuriamo il file config/database.yml come di norma per avere a disposizione i database necessari all’applicazione; posizioniamoci nella cartella principale del progetto e applichiamo BusinessBase al progetto appena creato
ruby script/generate business_base business_base
Lo script crea per noi una serie di file:
exists app
exists app/controllers
create app/controllers/system
create app/controllers/system/logger_controller.rb
create app/controllers/system/administration
create app/controllers/system/administration/functions_controller.rb
create app/controllers/system/administration/models_controller.rb
create app/controllers/system/administration/profiles_controller.rb
create app/controllers/system/administration/users_controller.rb
create app/controllers/system/administration/extensions_controller.rb
create app/controllers/system/administration/translations_controller.rb
exists app/models
create app/models/extension.rb
create app/models/function.rb
create app/models/model.rb
create app/models/profile.rb
create app/models/profiles_functions.rb
create app/models/profiles_models.rb
create app/models/translation.rb
create app/models/user.rb
create app/models/users_profiles.rb
exists app/views
exists app/views/layouts
create app/views/layouts/application.rhtml
create app/views/shared
create app/views/shared/system
create app/views/shared/system/_index.rhtml
create app/views/shared/system/_detail.rhtml
create app/views/shared/system/_relation_to_many.rhtml
create app/views/shared/system/_relation_to_one.rhtml
create app/views/system/administration
create app/views/system/administration/extensions
create app/views/system/administration/extensions/index.rhtml
create app/views/system/administration/extensions/detail.rhtml
create app/views/system/administration/functions
create app/views/system/administration/functions/index.rhtml
create app/views/system/administration/functions/detail.rhtml
create app/views/system/administration/models
create app/views/system/administration/models/index.rhtml
create app/views/system/administration/models/detail.rhtml
create app/views/system/administration/profiles
create app/views/system/administration/profiles/index.rhtml
create app/views/system/administration/profiles/detail.rhtml
create app/views/system/administration/translations
create app/views/system/administration/translations/index.rhtml
create app/views/system/administration/translations/detail.rhtml
create app/views/system/administration/users
create app/views/system/administration/users/index.rhtml
create app/views/system/administration/users/detail.rhtml
create app/views/system/logger
create app/views/system/logger/denied.rhtml
create app/views/system/logger/login.rhtml
exists db
create db/migrate
exists db/migrate
create db/migrate/001_business_base.rb
exists lib
create lib/business_base.rb
exists public
force public/index.html
exists public/stylesheets
create public/stylesheets/business_base.css
exists public/images
create public/images/bb_button_add.gif
create public/images/bb_button_back.gif
create public/images/bb_button_delete.gif
create public/images/bb_button_down.gif
create public/images/bb_button_edit.gif
create public/images/bb_button_find.gif
create public/images/bb_button_refresh.gif
create public/images/bb_button_save.gif
create public/images/bb_button_up.gif
Lanciamo il comando per la migrazione del database in modo da creare le tabelle che ci servono e controllare che la connessione al database avvenga in modo corretto:
rake db:migrate
Infine aggiungiamo le seguenti righe all’interno del metodo ApplicationController nel file app/controllers/application.rb:
require 'business_base'
bb_setup
in modo cha il contenuto del file appaia in questo modo:
# Filters added to this controller apply to all controllers in the application.
# Likewise, all the methods added will be available for all controllers.
class ApplicationController < ActionController::Base
# Pick a unique cookie name to distinguish our session data from others'
session :session_key => '_bbdiscovery_session_id'
require 'business_base'
bb_setup
end
Ora possiamo avviare l’applicazione Rails con mongrel_rails start, puntare il browser su http://localhost:3000; alla presentazione della maschera di login inseriamo admin sia come nomeutente che come password per autenticarsi all’applicazione. L’utente admin è stato creato durante la migrazione del database con il comando rake db:migrate:
admin = User.create(:uid=>'admin', :pwd=>'', :name=>'admin', :email=>'admin@admin.com', :created_by=>1, :updated_by=>1 ).set_password('admin')
Ora possiamo iniziare ad esplorare BusinessBase.
7 Luglio 2007
Categorie: Tutorial, Ruby on Rails, Ruby
Articoli simili
- Leve, modalità e risultati dell'adozione di Ruby on Rails
- Rilasciato jRuby 1.0
- MagLev: presentazione RailsConf 2008
- HTML.it apre a Ruby e Ruby on Rails
- Ruby on Rails 2.0 disponibile