sql >> Database >  >> RDS >> Mysql

Waarom probeert rails verbinding te maken met mysql?

Wanneer ActiveRecord deel uitmaakt van de toepassing, probeert het bij het opstarten verbinding te maken met de database. Als er geen verbinding kan worden gemaakt, start de toepassing niet.

Het probleem is hier:

require 'rails/all'

Deze lijn bevat alle "gebruikelijke" rails componenten, waaronder ActiveRecord. Als je naar de definitie gaat, zou het er als volgt uit moeten zien (voor rails 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

Neem deze code, verwijder active_record regel en plaats in plaats daarvan uw rails/all lijn. Nu is ActiveRecord niet inbegrepen en zal uw toepassing luid falen wanneer het ActiveRecord-referenties in de code ziet, zoals deze:

config.active_record.mass_assignment_sanitizer = :strict

Deze moet je ook verwijderen. U hoeft database.yml niet te verwijderen, maar dat zou u waarschijnlijk wel moeten doen, aangezien het nu geen betekenis heeft.



  1. Django dumpdata gebruiken om een ​​subset van algemene gegevens te dumpen?

  2. Fout in SQL-instructie met kolom INSERT en AUTO-INCREMENT

  3. Waarom staat MySQL je toe om te groeperen op kolommen die niet zijn geselecteerd?

  4. dubbele vermeldingen in tabel verwijderen