Вопрос

Позволяет использовать настоящий мир.

Я хочу обезьян патч Willpaginate :: MinkRenderer.to_html Метод.

Пока я пробовал:

  1. Создан файл в папке: lib / monkeys / will_paginate_nohtml.rb
  2. Добавлено в конфигурацию / среда.
  3. Внутри этого файла это был мой код:

свидетельствовать

module Monkeys::WillPaginateNohtml
  def to_html
    debugger
    super
  end
end

WillPaginate::LinkRenderer.send(:include, Monkeys::WillPaginateNohtml)

Но каким-то образом отладчик не пропускается. Похоже, патчи не удалось.

Любая помощь будет оценена, спасибо!

Это было полезно?

Решение

А как насчет этого :-) решения @Shingana, @kandadaboggu не будет работать, так как здесь нет "супер". Вы хотите позвонить оригинал Версия не то супер версия.

module WillPaginate
  class LinkRenderer
    alias_method :to_html_original, :to_html
    def to_html
      debugger
      to_html_original
    end
  end
end

Другие советы

Название вашего вопроса вводит в заблуждение. Честно говоря, я думаю, что вы, вероятно, просто хотите настроить структуру списка страниц Will_Pagatine, которая может быть сделана по-разному.

Так что в вашем случае правильный путь - продлить рендер. Например, загрузить следующее из инициализатора (через конфигурацию / инициализаторы):

class CustomPaginationRenderer < WillPaginate::LinkRenderer

  def to_html
    # Your custom code, debugger etc
  end

end

Затем, чтобы ваше приложение использовать этот рендерер, добавьте следующее в файл Config / enducial.rb:

WillPaginate::ViewHelpers.pagination_options[:renderer] = 'CustomPaginationRenderer'

Я думаю, что вам нужно открыть метод

module WillPaginate
  class LinkRenderer
    def to_html
      debugger
      super
    end
  end
end

Попробуй это:

class WillPaginate::LinkRenderer
  def to_html
    debugger
    super
  end
end
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top