У меня естьRails перенаправление после уничтожения
def destroy
Event.find(params[:id]).destroy
flash[:info] = "Event deleted"
redirect_to :back
end
И я могу удалить элемент из 2-х разных взглядов. На одном представлении это список элементов, поэтому я могу использовать :back
и перезагружать одну и ту же страницу. Но другое удаление - на вид элемента, который нужно удалить, поэтому, как только он исчезнет, я хочу, чтобы redirect_to
где-то отличался.
Мой вопрос: как я могу указать Rails на другой маршрут redirect_to
в зависимости от того, откуда идет метод destroy
?
В качестве теста я попытался использовать оператор if, основанный на классе body в html, но переменная экземпляра не переносится в метод destroy (я предполагаю), поскольку он не работает. например
def destroy
if @body_class == 'one page'
Event.find(params[:id]).destroy
flash[:info] = "Event deleted"
redirect_to :back
elsif @body_class == 'a different page'
Event.find(params[:id]).destroy
flash[:info] = "Event deleted"
redirect_to root_path
end
end
Perfect - спасибо за вашу помощь. Получил это! – matski