在 rails 服务器加载后直接创建变量

Creating a variable directly after rails server loads

我正在尝试使用 classifier gem 将引号分类为 "happy" 或 "sad"。现在,我对应用程序进行了配置,以便任何新的 POST 请求都可以通过在 app/controllers/quotes_controller.rb

中使用以下命令 bayes.train_happy "I am very happy" 来训练分类器

只要在服务器处于 运行 时添加新引号,这就有效。但是,无论何时服务器关闭或重新启动(在开发过程中不断),变量 bayes 都会被删除,这样当我重新启动服务器时,引号将保存在数据库中,但 bayes 变为空。

本质上,我希望能够在服务器启动后直接调用下面的代码块,这样用户就可以在服务器启动后直接调用已经构建的分类器。

bayes = Classifier::Bayes.new 'happy', 'sad'

Quote.all.each do |quote|
    eval("bayes.train_#{quote.classification} quote.body.upcase")
    puts "wrote {#{quote.body}} to bayes"
end

其中Quotedb/schema.rb

中定义如下
create_table "quotes", force: true do |t|
    t.string   "body"
    t.string   "classification"
    t.datetime "created_at"
    t.datetime "updated_at"
end

initializers 文件夹中创建任何文件并将您的代码放在那里。确保包含所有依赖项(如果有)。 Rails 将在服务器加载期间加载并执行它