Rails 3 - script/* replacer

Mivel a Rails 3 megszuntette a script/server, script/console fajlokat, nekem meg ez van benne a kezembe, borzasztoan hianyoztak. Szerencsere, van megoldas, meg ha kicsit benacska is:


#!/usr/bin/env ruby

APP_PATH = File.expand_path('../../config/application',  __FILE__)
cmd = File.basename(__FILE__).sub(/\.rb$/, '')
ARGV.unshift cmd

require File.expand_path('../../config/boot',  __FILE__)
require 'rails/commands'

Ez gyakorlatilag a script/rails kodja, annyi extraval, hogy a cmd erteket belenyomom az argumentumok koze, es igy ugy tunik a rendszernek, mintha azt mondtam volna, hogy rails console.

Hozzászólások

Hogy borzasztoan dinamikus. Legalabbis nekem ez tetszik benne. Ruby-ban meg a szamokat reprezentalo osztalyokat is siman kibovitheted extra kepessegekkel, ha erre van szukseged, vagy akar a tomboket. Eppen most irok egy olyan Hash osztaly kiterjesztest, amivel lehet JS/JSON-szeruen kezelni a tomboket. Vagyis a barmi.erteke az egy barmi[:erteke] hivasnak felel meg (alapvetoen szimbolumokra optimalizalok, de ha a hash tartalmaz ilyen stringet, azt is megtalalja, csak az nincs rendesen lekezelve, az csak ilyen 'menjen ez is' jelleggel lett belerakva. Elvben van ilyen wrapper osztaly, az OStruct, de az nekem nem tetszik, mert nagyon sok helyrol direkt hash jon.
--


Ki oda vagyik, hol szall a galamb, elszalasztja a kincset itt alant.