Rails hat diese schönen chainable Methoden. Wie füge ich meine eigenen hinzu? Ich dachte, eine Klassenmethode im Modell zu definieren, von dem ich möchte, dass meine eigene Methode aufrufen, aber dies würde nur zu Beginn einer „Kette“ arbeiten:Definieren einer benutzerdefinierten "kettenfähigen" ActiveRelation-Methode wie `order` und` limit`
class << self
def order_by_specialness
order(:specialness)
end
end
Ich vermute, ich brauchen würde, ActiveRecord::Relation
irgendwie zu verlängern , da dies von jeder der kettenfähigen Abfragemethoden zurückgegeben wird. Aber von da an bin ich ratlos.
Benannte Bereiche sind "tot"; http://www.railway.at/2010/03/09/named-scopes-are-dead/ – Bjorn
Nein, sind sie nicht. – Garrett
Um auf @Garrett zu erweitern, hat der Eisenbahnautor, der vorschlägt, keine Scopes zu verwenden, einen Fehler mit dem Rails-Team eingereicht, das sie behoben haben, wobei er seinen Standpunkt vertritt, dass man keine Scopes verwenden sollte. https://rails.lighthouseapp.com/projects/8994-ruby-on-rails/tickets/4142-arel-methods-in-scope-cause-issues-with-non-existent-tables – SooDesuNe