Includere librerie esterne in Rails (was: Re: Invio di un fi


#1

Risolto… è stato sufficente copiare i files di Curb (i files curb.rb
ed il compilato curb_core.bundle) nella cartella /lib della mia
applicazione. In pratica lasciando tutto nel percorso standard di gems
caricava il primo (che creava il modulo, quindi non avevo il
NameError) ma non trovava il bundle…

Ora funziona perfettamente, e scaricare un file è veramente facile:

Curl::Easy.download(‘http://www.rubi-lang.org’,
‘/Users/julespiccotti/Desktop/ruby_index.html’)

mentre per fare il post http di un file è stato sufficente questo script:

c = Curl::Easy.new
c.url = 'http://mediaingestion.dv-lnx.esperia.com/upload.php'
c.multipart_form_post = true
c.http_post(Curl::PostField.file('Filedata',

‘/Users/julespiccotti/file.zip’))
@body = c.body_str
@headers = c.headers_str
@http_code = c.response_code

Mitico!

Jules Piccotti

Il 20/02/07, Ashkeyremoved_email_address@domain.invalid ha scritto:


#2

Scusatemi la banalità della domanda, ma non mi è ancora del tutto
chiaro quale sia il metodo corretto per utilizzare una gemma in un
progetto Rails.

Ho fatto diverse ricerche online, e nella maggior parte dei siti si
suggerisce l’accoppiata
require ‘rubygems’
require_gem ‘gemma’

ma finora non c’è stata una volta che sia funzionato come avrebbe
dovuto… (ho provato con simple-rss, feedtools, curb e qualche
altra).
L’unico modo per far si che le gemme funzionino a dovere è copiarne i
files in /lib nel mio progetto rails, ma trovo poco logico dover far
così, almeno per le gemme che spesso richiedono la compilazione per il
sistema in cui le si usa.

Altre gemme di sistema (come Rails stesso o Mysql) funzionano
perfettamente.

La cosa più ovvia che mi viene in mente è che queste ultime siano
state pensate per essere usate con rails, mentre altre gemme nascono
come librerie generiche per ruby e nell’environment di Rails i
percorsi non si riescano a risolvere correttamente…

Il 21/02/07, Ashkeyremoved_email_address@domain.invalid ha scritto: