Hallo zusammen,
Ich stehe auf dem Schlauch und hoffe das mir jemand von Euch auf die
Sprünge helfen kann.
Worum gehts?
Ich baue eine Seite, auf der sich Shops, mitsamt ihrer Öffnungszeiten in
eigenen Profilen verewigen können. Dazu habe ich ein Model ‘account’,
das ein Profil haben kann (es gibt verschiedene Formen), Das Profil
widerrum kann mehrere Öffnungszeiten haben (halt für jeden Tag der Woche
einen Eintrag)
class Account < ActiveRecord::Base
has_one :profile, :dependent => :destroy
end
class KoaExclusiveProfile < KoaProfile
belongs_to :account
has_many :opening_times, :dependent => :destroy
end
class OpeningTime < ActiveRecord::Base
belongs_to :profile
end
So weit, so gut. Das Anlegen und zuordnen einzelner Accounts mit deren
Profilen klappt inkl. der Öffnungszeiten. Aber wie stelle ich es an, das
jemand seine Profildaten inklusive der Öffnungszeiten über ein Formular
aktualisieren kann?
Ich scheitere schon daran, die aktuellen Öffnungszeiten in den
select-Boxen des Formulars anzuzeigen:
<%- form_for :profile, :html => {:multipart => true} do |f| -%>
[…]
<%- @profile.opening_times.each do |tag| -%>
OpeningTime::TIMES %> bis: <%= select “#{tag.wochentag}_mittag_ende”,
OpeningTime::TIMES, “#{tag.mittag_ende}” %>
OpeningTime::TIMES, “#{tag.mittag_anfang}” %> bis: <%= select
“#{tag.wochentag}_abends”, OpeningTime::TIMES, “#{tag.abends}” %>
<%- end -%>
[…]
<%- end -%>
Obige Lösung gefällt mir schon nicht und ist nicht wirklich Rails-ish
elegant.
Kann mir jemand freundlicherweise einen Klaps auf den Hinterkopf oder
Such-Stichworte geben wie ich über Assoziationen hinweg Modelle
aktualisieren kann?
Hat jemand vielleicht schon ähnliches implementiert und kann mir auf die
Sprünge helfen? Ich bin für jede Hilfe dankbar
Grüße
Tim