So mache ich eine Bearbeitungsseite, die Tiere und die Besitzer zu diesem Tier bearbeiten kann. Es gibt eine Join-Tabelle, die enthält, was Animal zu welchem Besitzer gehört.Display Schienen Join Tabelle Feld
Genauer gesagt Angenommen, Sie haben:
<% form_for :animal, url: animal_path(@edit_animal), method: :patch do |edit| %>
... animal labels and fields to edit go here ...
<%= edit.fields_for :owners do |owner| %>
<%= owner.label :name, "Name" %>
<%= owner.text_field :name %>
<%end%>
<%=edit.submit 'Submit'%>
<%end%>
Modell Verbände:
AnimalOwner < ApplicationRecord
belongs_to :animal
belongs_to :owner
Owner < ApplicationRecord
has_many :animal_owners
has_many :animals, :through => :animal_owners
Animal < ApplicationRecord
has_many :animal_owners
has_many :owners, :through => :animal_owners
Grundsätzlich bin ich nicht sicher, ob ich das Formular korrekt Tabellen beitreten tue. Ich wollte auch in der Lage sein, die Daten anzuzeigen, die derzeit in der Datenbank gespeichert werden: Wert, aber wie würde ich das für eine Join-Tabelle tun?
können Sie bitte die Modelle und ihre Zuordnungen richtig hinzufügen –
Mit einer einfachen Join-Tabelle, wie Sie beschreiben, können Sie ein Bearbeitungsformular aus drei verschiedenen Perspektiven haben. Von der Tier-Steuerung/-Ansicht, von der Besitzer-Steuerung/-Ansicht und von der Tier-Besitzer-Steuerung/-Ansicht. Es wäre ziemlich klar, ob der angemeldete Benutzer der Eigentümer ist und jedes Tier, das er anlegt, der Besitzer von ist. Aber wenn ein Tier mehrere Besitzer haben kann, wie sieht dann das Formular aus, um die Besitzer-Tier-Beziehung zu erstellen? Das Bearbeitungsformular wäre eine einfache Ableitung davon. –