С Rails 5 до Rails 6 мой помощник внутри папки lib не работает - PullRequest
0 голосов
/ 13 октября 2019

Я перенес свое приложение в Rails 6.0

У меня есть небольшая библиотека для единого входа на Disqus. В Rails 5 у меня есть эта библиотека внутри / lib, теперь я перемещаю ее в app / lib.

В моем app/lib/disqus/helpers у меня есть два помощника: user.rb и thread.rb

Этоявляется помощником пользователя.

module Disqus
  module Helpers
    module User
      extend ActiveSupport::Concern

      def disqus_data
        { id: "#{Rails.env}-#{id}",
          username: username,
          email: email,
          avatar: avatar.url,
          url: Rails.application.routes.url_helpers.user_url(self) }
      end

      def disqus_remote_auth_s3
        # create a JSON packet of our data attributes
        data = disqus_data.to_json

        # encode the data to base64
        message  = Base64.encode64(data).gsub("\n", "")

        # generate a timestamp for signing the message
        timestamp = Time.zone.now.to_i

        # generate our hmac signature
        sig = OpenSSL::HMAC.hexdigest('sha1', SECRET_KEY, '%s %s' % [message, timestamp])

        "#{message} #{sig} #{timestamp}"
      end
    end
  end
end

Когда я пытаюсь позвонить с моего взгляда current_user.disqus_remote_auth_s3.to_json У меня возникает ошибка

undefined method `disqus_remote_auth_s3' for #<User:0x00007f88298aaf30>

У меня с Rails 5 все в порядке

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...