Ruby on Rails
Configurazione
Ricerca…
Ambienti in Rails
I file di configurazione per i binari possono essere trovati in config/environments/
. Di default le rotaie hanno 3 ambienti, development
, production
e test
. Modificando ogni file si modifica la configurazione solo per quell'ambiente.
Rails ha anche un file di config/application.rb
in config/application.rb
. Questo è un file di configurazione comune poiché le impostazioni qui definite vengono sovrascritte dalla configurazione specificata in ogni ambiente.
Aggiungete o modificate le opzioni di configurazione all'interno di Rails.application.configure do
blocco e le opzioni di configurazione iniziano con config.
Configurazione del database
La configurazione del database di un progetto di rotaie si trova in un file config/database.yml
. Se si crea un progetto utilizzando il comando rails new
e non si specifica un motore di database da utilizzare, rails utilizza sqlite
come database predefinito. Un tipico file database.yml
con configurazione predefinita sarà simile al seguente.
# SQLite version 3.x
# gem install sqlite3
#
# Ensure the SQLite 3 gem is defined in your Gemfile
# gem 'sqlite3'
#
default: &default
adapter: sqlite3
pool: 5
timeout: 5000
development:
<<: *default
database: db/development.sqlite3
# Warning: The database defined as "test" will be erased and
# re-generated from your development database when you run "rake".
# Do not set this db to the same as development or production.
test:
<<: *default
database: db/test.sqlite3
production:
<<: *default
database: db/production.sqlite3
Se vuoi cambiare il database predefinito mentre crei un nuovo progetto puoi specificare il database: rails new hello_world --database=mysql
Configurazione generale delle guide
Le seguenti opzioni di configurazione dovrebbero essere chiamate su un oggetto Rails::Railtie
- config.after_initialize : prende un blocco che verrà eseguito dopo che le rotaie hanno inizializzato l'applicazione.
- config.asset_host : imposta l'host per le risorse. Questo è utile quando si utilizza una rete di consegna del contenuto . Questa è una scorciatoia per
config.action_controller.asset_host
- config.autoload_once_paths : questa opzione accetta una serie di percorsi in cui Rails esegue il caricamento automatico delle costanti. Il valore predefinito è un array vuoto
- config.autoload_paths : accetta una serie di percorsi in cui Rails esegue il caricamento automatico delle costanti. Per impostazione predefinita tutte le directory in
app
- config.cache_classes : determina se le classi e i moduli devono essere ricaricati su ogni richiesta. Nella modalità di sviluppo, questa impostazione predefinita è
false
e nelle modalità di produzione e di test è impostata sutrue
- config.action_view.cache_template_loading : determina se i modelli devono essere ricaricati su ogni richiesta. Il valore predefinito è l'impostazione
config.cache_classes
- config.beginning_of_week : imposta l'inizio predefinito della settimana. Richiede un simbolo valido per il giorno della settimana (
:monday
) - config.cache_store : scegli quale negozio di cache usare. Le opzioni includono
:file_store
:memory_store
,mem_cache_store
onull_store
. - config.colorize_logging : controlla se le informazioni di registrazione sono colorate
- config.eager_load : Eager-carica tutto registrato
- config.encoding : specifica la codifica dell'applicazione. Il valore predefinito è
UTF-8
- config.log_level : imposta la verbosità di Rails Logger. Per impostazione predefinita,
:debug
in tutti gli ambienti. - config.middleware : utilizzare questo per configurare il middleware dell'applicazione
- config.time_zone : imposta il fuso orario predefinito dell'applicazione.
Configurazione delle risorse
Le seguenti opzioni di configurazione possono essere utilizzate per la configurazione delle risorse
- config.assets.enabled : determina se la pipeline degli asset è abilitata. Questo valore predefinito è true
- config.assets.raise_runtime_errors : abilita il controllo degli errori di runtime. È utile per la
development mode
- config.assets.compress : consente di comprimere le risorse. Nella modalità di produzione, questa impostazione predefinita è true
- config.assets.js_compressor : specifica quale compressore JS usare. Le opzioni includono
:closure
:uglifier
e:yui
- config.assets.paths : specifica quali percorsi cercare i beni.
- config.assets.precompile : consente di selezionare asset aggiuntivi da precompilare durante il
rake assets:precompile
viene eseguito ilrake assets:precompile
- config.assets.digest : questa opzione consente l'uso di impronte digitali
MD-5
nei nomi degli asset. Il valore predefinito è true in modalità sviluppo - config.assets.compile : Attiva la compilazione di
Sprockets
dal vivo in modalità produzione
Configurazione dei generatori
Rails consente di configurare quali generatori vengono utilizzati durante l'esecuzione di comandi di rails generate
. Questo metodo, config.generators
prende un blocco
config.generators do |g|
g.orm :active_record
g.test_framework :test_unit
end
Ecco alcune delle opzioni
Opzione | Descrizione | Predefinito |
---|---|---|
risorse | Crea risorse durante la generazione di scaffold | vero |
force_plural | Consente nomi di modelli pluralizzati | falso |
aiutante | Determina se generare helper | vero |
integration_tool | Specificare lo strumento di integrazione | test_unit |
javascript_engine | Configura il motore JS | :js |
resource_route | Genera rotta delle risorse | vero |
stylesheet_engine | Configura il motore del foglio di stile | :cs |
scaffold_stylesheet | Crea CSS su scaffolding | vero |
test_framework | Specifica il framework di test | Minitest |
template_engine | Configura il motore di template | :erb |