Un uso della directory lib (come lo uso molto spesso) è quello di condividere il codice tra i modelli di rimanere a secco. Ad esempio, se si sta definendo un attributo tag_tokens
su molti modelli diversi da utilizzare con un input tokenizer, è possibile inserirlo in "tag_accessor.rb" o qualcosa, posizionarlo in /lib
"e quindi includerlo con include TagAccessor
. Il file rubino potrebbe sembrare:
module TagAccessor
def tag_tokens
tags.map(&:name).join(',')
end
def tag_tokens=(names)
self.tag_ids = names.split(",").uniq
end
end
(Questo è un esempio da una delle mie applicazioni, ed è per questo che è così specifica). Poi per caricare la cartella/lib in Rails 3, inserire questo nel vostro application.rb
:
config.autoload_paths += %W(#{config.root}/lib)
hi @bricker, dire che devo scrivere calcolatore delle imposte, è meglio mettere al calcolo delle tasse compiti realted nella cartella/lib, come /lib/damp_tax/tax_calculator.rb e il contenuto in tax_calculator.rb come modulo DampTax; class TaxCalculator; fine; fine; – codemilan