ruby-on-rails - 在哪里存储不属于模型或 Controller 的代码?

标签 ruby-on-rails ruby

我有几个实用方法还不属于某个类或模型。

保存这段代码的好地方在哪里?我如何使用模型调用它?

def get_api
 Clickatell::API.authenticate(ENV['AP_ID'], ENV['PASSWORD'])
end

def send_sms(from, message)
 begin
  api = get_api
  api.send_message(from, message)
 rescue Exception => exc
  logger.error(message + " " + "Message for the log file #{exc.message}")
  render :text => "#{exc.message}", :status => 200
 end 
end

最佳答案

您可以在“lib”目录或 lib 的子目录下实现该模块。

在application.rb中,如果修改autoload_paths为:

 config.autoload_paths += Dir["#{config.root}/lib/**/"]

它将自动加载。

如果您不想更改配置,您可以在模型文件的开头要求该文件。

require "relative_path_under_lib" 

关于ruby-on-rails - 在哪里存储不属于模型或 Controller 的代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22345804/

相关文章:

ruby-on-rails - Rails 4 elasticsearch使用多个搜索条件,结合了搜索功能

ruby - 如何在 Ruby 中获取两个日期之间的所有星期日?

ruby-on-rails - BCrypt 3.1.2 更新导致 Heroku 推送失败

ruby - 如何重写 ruby​​ lib 的方法?

ruby-on-rails - rails : sporadic Carrierwave/Excon errors

ruby-on-rails - Postgresql 问题 `initialize` ... Socket .s.PGSQL.5432

ruby-on-rails - "Nil location provided. Can' t build URI."在 rails 中执行 AJAX 请求时是什么意思?

ruby-on-rails - 使用对象参数和额外的 id 模拟 POST 请求

ruby - 如何检查我的输入字符串?

html - latex 输入到 html 和 pdf 输出