undefinierte Methode 'erklären' für #ActiveRecord :: ConnectionAdapters :: MysqlAdapter

7

Ich bin neu bei Ruby on Rails, aber ich habe einige Tutorials verfolgt und kenne mich ein wenig aus. Ich habe ein Gerüst erstellt und Daten in eine MySql-Datenbank eingefügt.

Beim Navigieren zu index.html.erb erhalte ich den Fehler im Titel

Der Controller führt den Index

aus %Vor%

Und das hat als Struktur

%Vor%

RoR arbeitet für andere Gerüste, die ich erstellt habe, und listet Daten auf. Ich habe die Struktur in mysql für die Entität Beer aktualisiert, und es hat wahrscheinlich keine Änderungen in den Schienen (nicht) widergespiegelt.

Brauche ich ein anderes Juwel, um Schienen mit einer MySQL-Datenbank zu verbinden? Jeder Ratschlag, auf was zu prüfen ist, würde geschätzt werden (:

    
italiansoda 29.01.2012, 23:44
quelle

1 Antwort

24

Ich nehme an, dass Sie Rails 3.2 verwenden und dass Ihr Beer.all -Aufruf zu lange dauert. Aus den 3.2-Versionshinweisen :

  

Abfragen, deren Ausführung mehr als eine halbe Sekunde dauert, werden automatisch im Entwicklungsmodus erklärt. Dieser Schwellenwert kann natürlich geändert werden.

Und wenn wir uns den MySQL-Adapter für Rails ansehen, gibt es kein explain Methode. Der MySQL2-Adapter versteht jedoch explain .

Zuallererst benötigen Sie wahrscheinlich weniger Bier oder eine Paginierung. Dann sollten Sie versuchen, zum MySQL2 Adapter zu wechseln; installiere einfach den neuen Adapter indem du dein Gemfile redest um mysql2 zu benutzen, bundle um die neuen Sachen einzurichten und dann dein database.yml so zu ändern, dass es mehr wie folgt aussieht:

%Vor%     
mu is too short 30.01.2012, 00:36
quelle