2017-06-17 3 views
1

Wahrscheinlich eine Newbie Frage, aber es hat mich fest.Rails controler übergeben keine Argumente an Modell

Mein Rails-Programm sollte eine Ursprungsstadt, eine Zielstadt und dann eine Datenbank nach einer Reise suchen, die den Suchbegriffen entspricht. Leider bin ich nicht sicher, warum meine Controller die Argumente der Methode nicht vorbei I "m im Modell Aufruf

In meinem Controller habe ich:.

@OneLeg = Trip.OneLeg(params[:origin], params[:destination]) 

und in meinem Modell Ich habe :

def self.OneLeg(sorigin, sdestination) 
    Trip.where(["origin = ? and destination = ?", sorigin, sdestination]) 
end 

Wenn ich versuche, um die Webseite zu sehen bekomme ich den Fehler:

wrong number of arguments (given 0, expected 2)

Nicht ganz sicher Was verursacht das Problem?

Vielen Dank im Voraus für Ihre Hilfe mit diesem!

+0

auf welcher Linie erhalten Sie diesen Fehler? Teilen Sie Ihre Form, wahrscheinlich hat Ihre Params keine Werte mit solchen Schlüsseln..was sehen Sie in den Protokollen? –

+1

die params sind null, deshalb –

Antwort

0

Wahrscheinlich eine starke Params-Frage. Versuche, deine privaten Contollers-Methoden (tripParams o.ä.) zu posten und wir können dir ein wenig helfen.

Mehr als wahrscheinlich müssen Sie die Params zulassen und über diese Params-Methode darauf zugreifen.

Verwandte Themen