Ich benutze Rails 4.2 und verwende auch ActsAsParanoid gem, um Elemente aus der Datenbank zu löschen.Wie man link_to wiederherstellen gelöschte Objekte wiederherstellen?
ich eine Controller-Aktion zu indizieren .only_deleted
Objekte erstellt habe ...
sample_controller.rb
class FlavorsController < ApplicationController
...
def inactive
@flavors = Flavor.only_deleted
render action: :index
end
...
end
Ich bin ein partielles _flavor
mit Geschmack des zu machen, und ich frage mich, wie macht man link_to
Helfer anzeigen, um dieses Objekt wiederherzustellen? So etwas wie ...
<%= link_to "Recover", flavor.recover %>
Sie haben bereits die meisten Ihrer Antwort, Vielleicht müssen Sie nur eine neue Aktion zu Ihrem 'Flavors'-Controller hinzufügen, etwas wie' def recover', und in dieser Aktion, tun Sie einfach '@ flavour.recover'. Sie müssten auch eine neue Mitgliederroute für diese neue Aktion hinzufügen, und in dieser Aktion müssten Sie das '@ flavour' laden. Verwenden Sie dann die hinzugefügte Route in Ihrem 'link_to'. – fanta
@fanta würden Sie bitte mit mehr Details antworten, als ich getan habe, wie Sie sagten, aber es gibt den Fehler zurück 'ActiveRecord :: RecordNotFound in FlavorsController # erholen Konnte nicht finden Flavor mit' ID '= 1 [WHERE "Aromen". " deleted_at "IS NULL]' –
Klingt so, als ob Ihnen der Bereich 'with_deleted' in Ihrer Abfrage fehlt. Wie 'Flavor.with_deleted.find (params [: id])'. – messanjah