2016-05-04 19 views
0

In der Hoffnung, dies wird eine einfache Frage, aber ist jemand in der Lage, mir die beste Möglichkeit, ein verstecktes Feld basierend auf einem Wert auf einer anderen Tabelle zu füllen.Rails Association füllen Feld von einer anderen Tabelle

Ich habe derzeit 2 Tabellen - table_numbers, die die folgenden Felder hat - ID und Wert (dezimal), und table_records, die ein Betragsfeld hat.

Auf dem Formular einen neuen Datensatz hinzufügen, ich habe nach dem Wert es

= f.association :table_number, :collection => table_numbers.order('value ASC'), :label_method => :value, :prompt => "Select a value", :label => "value" 

Im Moment hinzuzufügen diese die number_id auf der Aufzeichnungen Tabelle bevölkern, aber den Wert auf dem Formular anzuzeigen, wenn einen Datensatz hinzufügen. Was ich möchte, ist, den Wert auch zu bekommen, um eine Berechnung auf dem Wert und der Menge laufen zu lassen.

Was wäre der beste Weg, dies zu tun? Aktualisieren Sie die obige Zeile oder muss ich zusätzlichen Code hinzufügen?

Dank

+0

Benötigen Sie den Wert für Berechnungen, nachdem das Formular abgeschickt wurde? Da Sie die ID des Datensatzes table_number haben, können Sie den Wert daraus abrufen. – margo

+0

Sobald die Berechnung durchgeführt wurde, dann wird der Wert angezeigt, aber das ist im Moment kein Problem. Danke – user2427972

+0

Haben Sie noch eine Frage? Wenn ja, kannst du es klarstellen, da es nicht klar ist, was du zu tun versuchst? – margo

Antwort

0

Sie können calucaltions in BEFORE_SAVE Rückruf Modell perfom. Wenn Sie Berechnungen anzeigen möchten, verwenden Sie helper und zeigen Sie es an.

Verwandte Themen