sql >> Database teknologi >  >> RDS >> Mysql

Hvorfor forsøger rails at oprette forbindelse til mysql?

Når ActiveRecord er en del af applikationen, forsøger den at etablere forbindelse til databasen ved opstart. Hvis den ikke kan oprette forbindelse, starter programmet ikke.

Problemet er her:

require 'rails/all'

Denne linje inkluderer alle "sædvanlige" skinnekomponenter, ActiveRecord blandt dem. Hvis du går til dens definition, skulle den se sådan ud (for skinner 3.2):

require "rails"

%w(
  active_record
  action_controller
  action_mailer
  active_resource
  rails/test_unit
  sprockets
).each do |framework|
  begin
    require "#{framework}/railtie"
  rescue LoadError
  end
end

Tag denne kode, fjern active_record-linjen og læg den i stedet for dine rails/all linje. Nu er ActiveRecord ikke inkluderet, og din applikation vil højlydt fejle, når den ser ActiveRecord-referencer i koden, som denne:

config.active_record.mass_assignment_sanitizer = :strict

Du skal også fjerne disse. Du behøver ikke at slette database.yml, men det burde du nok, da det ikke har nogen betydning nu.



  1. Brug af reserverede ord i kolonnenavne

  2. Opretter du en ny tabel i Laravel baseret på brugerinput?

  3. Indsættelse af nul-værdier ved brug af masseindsats

  4. Hvad er forskellen mellem at bruge og tænde i table joins i MySQL?