# RE: ricaricare le lib in rails

**URL:** <https://www.ruby-forum.com/t/re-ricaricare-le-lib-in-rails/70740>\
**Category:** IT\
**Created:** [October 2, 2006, 3:22pm UTC](https://www.ruby-forum.com/t/re-ricaricare-le-lib-in-rails/70740 "2006-10-02T15:22:55Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![Giuliano\_U](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/g/ecd19e/32.png) [@Giuliano\_U](https://www.ruby-forum.com/u/Giuliano_U)\
**Post date:** [October 2, 2006, 3:22pm UTC](https://www.ruby-forum.com/t/re-ricaricare-le-lib-in-rails/70740/1 "2006-10-02T15:22:55Z")

</div>

tranquillo Kiaro, non devi rispianare la macchina perchè non ti funziona,  
purtroppo è esattamente così…  
Plugins e librerie vengono caricate la prima volta che vengono  
richiamate e poi cachate…  
per ogni modifica occorre riavviare webrick…

---

<div class="post-metadata">

**Author:** ![Giuliano\_U](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/g/ecd19e/32.png) [@Giuliano\_U](https://www.ruby-forum.com/u/Giuliano_U)\
**Post date:** [October 2, 2006, 3:49pm UTC](https://www.ruby-forum.com/t/re-ricaricare-le-lib-in-rails/70740/2 "2006-10-02T15:49:02Z")

</div>

Hmmm. Cos’è che fa esattamente “reload!” in “script/console”? forse puoi  
crearti uno scriptino che fa quel che occorre per ricaricare l’ambiente?

Giuliano U. wrote:

> 

–  
“Remember, always be yourself. Unless you suck.” - Joss Whedon

---

<div class="post-metadata">

**Author:** ![Giuliano\_U](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/g/ecd19e/32.png) [@Giuliano\_U](https://www.ruby-forum.com/u/Giuliano_U)\
**Post date:** [October 2, 2006, 3:53pm UTC](https://www.ruby-forum.com/t/re-ricaricare-le-lib-in-rails/70740/3 "2006-10-02T15:53:03Z")

</div>

sarebbe utile! oppure conoscendo il meccanismo di caricamento di rails  
potrei hackarlo.  
voglio un bel bottone rosso da premere e non pensarci più 🙂

qualcuno di voi ha esperienza con questi meccanismi?

---

<div class="post-metadata">

**Author:** ![Giuliano\_U](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/g/ecd19e/32.png) [@Giuliano\_U](https://www.ruby-forum.com/u/Giuliano_U)\
**Post date:** [October 2, 2006, 5:35pm UTC](https://www.ruby-forum.com/t/re-ricaricare-le-lib-in-rails/70740/4 "2006-10-02T17:35:19Z")

</div>

Il personale barbatrucco che avevo usato per un’applicazione che avevo  
fatto  
tempo fa è il seguente.  
Fra i commenti ho scritto alcune cavolate che potrebbero non avere  
senso, ma  
siccome c’erano li ho lasciati 😛

# Spezzone di application.rb

# Permette di vedere le modifiche dei moduli presenti in lib senza dover

riavviare il web server (usare require\_dependency ‘module.rb’ se si  
desidera  
caricare automaticamente SOLO un file)  
Dir[File.join(RAILS\_ROOT, ‘lib’, “\*.rb”)].each do |file|  
require\_dependency file  
end  
…

# Filters added to this controller will be run for all controllers in

the  
application.

# Likewise, all the methods added will be available for all controllers.

class ApplicationController \< ActionController::Base  
…

Il senso è quello di aprire application.rb e prima della definizione della  
classe andare a fare un bel reload di quello che ti vuoi ricaricare. Il  
segretino, se così si può chiamare, è che application.rb viene richiamato  
sempre prima di eseguire un azione, quindi di volta in volta di  
ricaricherà  
le librerie desiderate  
File.join… ti definisce la posizione dei file da ricaricare.  
Nell’esempio  
si ricarica i file .rb che trova nella cartella lib. Attenzione che così  
com’è non ricarica tutti i file delle sottocartelle.

A me ha rallegrato lo sviluppo a suo tempo, anche se il codice  
dell’application controller si sporca un pochino… ma io non sono poi  
così  
pignolo 😛

---

<div class="post-metadata">

**Author:** ![Giuliano\_U](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/g/ecd19e/32.png) [@Giuliano\_U](https://www.ruby-forum.com/u/Giuliano_U)\
**Post date:** [October 2, 2006, 7:37pm UTC](https://www.ruby-forum.com/t/re-ricaricare-le-lib-in-rails/70740/5 "2006-10-02T19:37:39Z")

</div>

Mittico Rejes! satsera provo e ti faccio sapere.

---

<div class="post-metadata">

**Author:** ![Giuliano\_U](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/g/ecd19e/32.png) [@Giuliano\_U](https://www.ruby-forum.com/u/Giuliano_U)\
**Post date:** [October 2, 2006, 9:02pm UTC](https://www.ruby-forum.com/t/re-ricaricare-le-lib-in-rails/70740/6 "2006-10-02T21:02:52Z")

</div>

Giuliano U. wrote:

> tranquillo Kiaro, non devi rispianare la macchina perchï¿½ non ti funziona,  
> purtroppo ï¿½ esattamente cosï¿½…  
> Plugins e librerie vengono caricate la prima volta che vengono  
> richiamate e poi cachate…  
> per ogni modifica occorre riavviare webrick…

Se, nella classe includi il modulo Reloadable, le modifiche vengono  
prese al volo, senza riavviare webrick (sia plugins che librerie)

Ciao  
Simo  
addsw.it
