Zoeken…


Omgevingen in rails

Configuratiebestanden voor rails zijn te vinden in config/environments/ . Standaard heeft rails 3 omgevingen, development , production en test . Door elk bestand te bewerken, bewerkt u de configuratie alleen voor die omgeving.

Rails heeft ook een configuratiebestand in config/application.rb . Dit is een algemeen configuratiebestand, omdat alle hier gedefinieerde instellingen worden overschreven door de configuratie die in elke omgeving is opgegeven.

U voegt configuratieopties toe of wijzigt deze binnen het Rails.application.configure do block en configuratieopties beginnen met config.

Database configuratie

Databaseconfiguratie van een railproject ligt in een bestand config/database.yml . Als u een project maakt met de opdracht rails new en geen database-engine opgeeft die moet worden gebruikt, gebruikt rails sqlite als standaarddatabase. Een typisch database.yml bestand met standaardconfiguratie ziet er als volgt uit.

# 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

Als u de standaarddatabase wilt wijzigen terwijl u een nieuw project maakt, kunt u de database opgeven: rails new hello_world --database=mysql

Rails Algemene configuratie

De volgende configuratieopties moeten worden aangeroepen voor een Rails::Railtie object

  • config.after_initialize : neemt een blok dat wordt uitgevoerd nadat rails de toepassing heeft geïnitialiseerd.
  • config.asset_host : hiermee wordt de host ingesteld voor de middelen. Dit is handig wanneer u een Content Delivery Network gebruikt . Dit is een afkorting voor config.action_controller.asset_host
  • config.autoload_once_paths : deze optie accepteert een reeks paden waar Rails constanten automatisch laden. De standaardwaarde is een lege array
  • config.autoload_paths : dit accepteert een reeks paden waar Rails constanten automatisch laadt. Standaard worden alle mappen onder de app
  • config.cache_classes : bepaalt of klassen en modules bij elk verzoek opnieuw moeten worden geladen. In de ontwikkelingsmodus is dit standaard false en in de productie- en testmodi is het standaard true
  • config.action_view.cache_template_loading : dit bepaalt of sjablonen bij elk verzoek opnieuw moeten worden geladen. config.cache_classes instelling config.cache_classes
  • config.beginning_of_week : hiermee wordt het standaard begin van de week ingesteld. Het vereist een geldig weekdagsymbool ( :monday )
  • config.cache_store : kies welke cache-store je wilt gebruiken. Opties omvatten :file_store :memory_store , mem_cache_store of null_store .
  • config.colorize_logging : hiermee wordt bepaald of loginformatie wordt ingekleurd
  • config.eager_load : Eager-laadt alle geregistreerde
  • config.encoding : geeft de codering van de toepassing aan. De standaardwaarde is UTF-8
  • config.log_level : Stelt de uitgebreidheid van de Rails Logger in. Het is standaard ingesteld op :debug in alle omgevingen.
  • config.middleware : gebruik dit om de middleware van de toepassing te configureren
  • config.time_zone : hiermee wordt de standaardtijdzone van de toepassing ingesteld.

Activa configureren

De volgende configuratieopties kunnen worden gebruikt voor het configureren van middelen

  • config.assets.enabled : bepaalt of de activapijplijn is ingeschakeld. Dit is standaard true
  • config.assets.raise_runtime_errors : hiermee wordt runtime-foutcontrole ingeschakeld. Het is handig voor de development mode
  • config.assets.compress : laat activa worden gecomprimeerd. In de productiemodus is dit standaard true
  • config.assets.js_compressor : geeft aan welke JS-compressor moet worden gebruikt. Opties omvatten :closure :uglifier en :yui
  • config.assets.paths : geeft aan welke paden naar activa moeten worden gezocht.
  • config.assets.precompile : hiermee kunt u aanvullende activa kiezen die vooraf worden gecompileerd wanneer rake assets:precompile wordt uitgevoerd
  • config.assets.digest : met deze optie kunnen MD-5 vingerafdrukken in de namen van de items worden gebruikt. Het staat standaard op true in de ontwikkelingsmodus
  • config.assets.compile : Schakelt live Sprockets compilatie in productiemodus

Generators configureren

Met Rails kunt u configureren welke generators worden gebruikt wanneer rails generate uitgevoerd rails generate opdrachten te rails generate . Deze methode, config.generators neemt een blok

config.generators do |g|
  g.orm :active_record
  g.test_framework :test_unit
end

Hier zijn enkele opties

Optie Beschrijving Standaard
middelen Creëert activa bij het genereren van steigers waar
force_plural Staat meervoudig modelnamen toe vals
helper Bepaalt of helpers moeten worden gegenereerd waar
integration_tool Specificeer integratie tool test_unit
javascript_engine Configureert JS-engine :js
resource_route Genereert bronroute waar
stylesheet_engine Configureert stylesheet-engine :cs
scaffold_stylesheet Creëert CSS bij steigers waar
test_framework Specificeer Test Framework Minitest
template_engine Configureert template engine :erb


Modified text is an extract of the original Stack Overflow Documentation
Licentie onder CC BY-SA 3.0
Niet aangesloten bij Stack Overflow