Модуль ссылок в Rails 5 не работает - PullRequest
0 голосов
/ 25 ноября 2018

Я создал модуль и включил его в папку 'lib', он называется aps_request_ott и выглядит примерно так:

module Ott
...
def module_test
  "Module Test"
end

Включены пути в config/application.rb, например:

config.autoload_paths += %W(#{config.root}/lib)

Наконец, у меня есть модель с именем rmodel, которая выглядит следующим образом:

class Rmodel < ApplicationRecord
    include Ott
    def model_module_test
        "Module test"
    end

end

Несмотря на все это, всякий раз, когда я пытаюсь вызвать Rmodel.model_module_test, я получаю ошибку: NameError (uninitialized constant Rmodel::Ott):

Может кто-нибудь сказать мне, что мне не хватает?

Ответы [ 3 ]

0 голосов
/ 26 ноября 2018

Вы можете попробовать:

require "#{Rails.root}/lib/aps_request_ott"

поверх вашего Rmodel файла, если вы хотите, чтобы модуль требовался только там.

0 голосов
/ 26 ноября 2018
    ## config/application.rb

    #autoloads lib folder during development
    config.eager_load_paths << Rails.root.join('lib')

    #autoloads lib folder during development
    config.autoload_paths << Rails.root.join('lib')
0 голосов
/ 25 ноября 2018

Может быть, вы просто измените config на Rails?Нечто подобное

config.autoload_paths += %W(#{Rails.root}/lib)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...