Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/apache-kafka/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 在带有Phobos Gem的Rails 6中找不到ActiveRecord类_Ruby On Rails_Apache Kafka - Fatal编程技术网

Ruby on rails 在带有Phobos Gem的Rails 6中找不到ActiveRecord类

Ruby on rails 在带有Phobos Gem的Rails 6中找不到ActiveRecord类,ruby-on-rails,apache-kafka,Ruby On Rails,Apache Kafka,我使用在Rails应用程序中使用Kakfa消息,并在Railsconfig/initializers/phobos.rb中配置它,从config/phobos.yml启动执行器,如下所示: config/initializers/phobos.rb: Phobos.configure('config/phobos.yml') executor = Phobos::Executor.new executor.start class TransactionsConsumer include P

我使用在Rails应用程序中使用Kakfa消息,并在Rails
config/initializers/phobos.rb
中配置它,从
config/phobos.yml
启动执行器,如下所示:

config/initializers/phobos.rb

Phobos.configure('config/phobos.yml')
executor = Phobos::Executor.new
executor.start
class TransactionsConsumer
  include Phobos::Handler

  def self.start(kafka_client)
    # setup handler
    puts "Starting Transaction Consumer"
  end

  def consume(payload, metadata)
    puts metadata
    puts payload
    data = JSON.parse(payload)
    if Address.exists?(address: data["fromAddress"])
      AccountBalanceUpdateJob.perform_in(1, data["fromAddress"])
    end
  end
end
当尝试从
ActiveRecord
加载
地址
模型时,我收到一个
:exception\u class=>“NameError”,:exception\u message=>“uninitialized constant transactionsumer::Address”
错误。不应该有
TransactionConsumer::Address
,但应该在
app/models/Address.rb
中找到
Address

app/consumers/transactions\u Consumer.rb中的我的消费者:

Phobos.configure('config/phobos.yml')
executor = Phobos::Executor.new
executor.start
class TransactionsConsumer
  include Phobos::Handler

  def self.start(kafka_client)
    # setup handler
    puts "Starting Transaction Consumer"
  end

  def consume(payload, metadata)
    puts metadata
    puts payload
    data = JSON.parse(payload)
    if Address.exists?(address: data["fromAddress"])
      AccountBalanceUpdateJob.perform_in(1, data["fromAddress"])
    end
  end
end
我假设我没有以某种方式正确配置Phobos以自动加载或查看Rails类。如何配置Phobos以使用Rails模型/对象

TransactionConsumer
类是否需要
包含
需要
特殊的东西