Как использовать Dry Auto Inject в рельсах?

У меня есть контейнер

// конфигурация / инициализатор /auto_inject.rb

class Container
  extend Dry::Container::Mixin
  namespace :register do
    register('admin') do
     Connector::Admin.new
    end
     register('user') do
      Connector::User.new
    end
  end
end

AutoInject = Dry::AutoInject(Container)

В моем классе

Class SpecialClass
  include AutoInject['register']. # I am not able to include the namespace have to do ['register.admin','register.user']
  def call(params:)
  "#{params.name}".call(test: 'aa')
  end
end

Получение этой ошибки Ошибка: неопределенный метод `call'для" поиска ":String

Как я могу вызвать класс из строки, которую попробовали contanize, to_sym, похоже, ничего не работает.

0 ответов

Другие вопросы по тегам