Ich bin neu bei Rails und stecke irgendwie mit diesem Designproblem fest, das vielleicht einfach zu lösen ist, aber ich komme nicht weiter: Ich habe zwei verschiedene Arten von Anzeigen: Highlights und Schnäppchen. Beide haben die gleichen Attribute: Titel, Beschreibung und ein Bild (mit Büroklammer). Sie haben auch die gleiche Art von Aktionen, die auf sie angewendet werden können: Index, Neu, Bearbeiten, Erstellen, Aktualisieren und Löschen.
Ich habe eine STI wie folgt festgelegt:
Anzeigenmodell: ad.rb
class Ad < ActiveRecord::Base
end
Schnäppchen Modell: bargain.rb
class Bargain < Ad
end
Hervorhebungsmodell: highlight.rb
class Highlight < Ad
end
Das Problem ist, dass ich nur einen Controller haben möchte ( AdsController
), die je nach URL die genannten Aktionen für Schnäppchen oder Highlights ausführt, also www.foo.com/bargains[/...] oder www.foo.com/highlights[/...].
Zum Beispiel:
- GET www.foo.com/highlights => eine Liste aller hervorgehobenen Anzeigen.
- GET www.foo.com/highlights/new => Formular zum Erstellen einer neuen Markierung usw...
Wie kann ich das tun?
Danke!