2017-01-29 3 views
0

Ich versuche, eine gruppierte_Auswahl_select in meinem Formular zu implementieren, aber ich kann es nicht zum Laufen bringen.Schienen gruppierte_sammlung_select funktioniert nicht - "undefined Methode 'Karte'"

In meinem Schema habe ich eine Tabelle 'Sport' mit den Attributen 'Name', 'Oberfläche' und 'Spieler'.

Ich würde zu einer Gruppe wie die ‚Oberflächen‘ durch ‚Name‘ - hier ist mein Versuch:

<%= f.grouped_collection_select(:surface, Sport.order(:name), :surface, :name, :surface, :surface) %> 

Dies wirft Fehler: „nicht definierte Methode` Karte '“

Vielen Dank im Voraus für jede Hilfe!

Antwort

0

Ich glaube, Sie haben :surfaces statt :surface, wenn es eine has_many Assoziation ist. Möchten Sie auch die id oder die Zeichenfolge speichern? Sie könnten es entsprechend ändern.

<%= f.grouped_collection_select(:surface_id, Sport.order(:name), :surfaces, :name, :id, :name) %>

+0

Dank Hassanin Ich habe erklärt, nicht explizit eine has_many Beziehung überall. Stattdessen habe ich nur ein Modell für Sport, die Name, Oberfläche und Spieler umfasst ... – Laralander

+0

Wenn ich Ihre Lösung versuche, bekomme ich diesen Fehler: undefined Methode 'Oberflächen ' – Laralander

+0

Ich denke, es ist, weil es ein einziges Sportmodell kein Modell für Sport, Oberflächen und Spieler - hier ist die Migration: Klasse CreateSports Laralander

Verwandte Themen