非特定 MVC 框架 ruby gem 和 Rails 框架的示例代码

Non specific MVC framework ruby gems and example code to Rails framework

我一直在 Rails 上学习 Ruby,但是当涉及到 Ruby gem 时我仍然有问题,示例是基于 irb 而不是 Rails 或基于 Sinatra 框架。我正在尝试实现 Block.io 比特币 API 功能。但是我找到的代码只是 Ruby,所以我不确定在哪里为 API 键创建一个配置文件,也不知道我是否需要创建一个控制器来使它在视图中工作 Rails.

gem 和示例在:https://github.com/BlockIo/gem-block-io

我在 Rails

上通过 bundle install 安装了这个 gem
gem install block_io -v=1.0.6

Ruby 示例显示如下:

>> require 'block_io'
>> BlockIo.set_options :api_key=> 'API KEY', :pin => 'SECRET PIN', :version => 2

在Rails哪个配置文件中输入上面的api_key和pin?

在示例中,他们显示了获取地址的代码如下:

BlockIo.get_my_address

我是否需要在控制器中创建一个函数,例如:

def address
 @my_address = BlockIo.get_my_addresses
end

并在视图中使用:

<%= @my_address %>

我需要关于上述内容的一些指导,如有任何意见或帮助,我们将不胜感激。

require 'block_io' 可以像 gem 'block_io' 一样进入 Gemfile。 Rails/bundler 将自动为您要求它,只要 gem 名称也是您希望从此 gem 要求的文件名。

BlockIo.set_options :api_key=> 'API KEY', :pin => 'SECRET PIN', :version => 2 可以像 config/initializers/block_io.rb 这样的初始化器。这样 set_options 仅在 Rails 启动服务器或控制台或运行程序时调用一次。

像这样放到文件里config/initializers/block_io.rb

BlockIo.set_options :api_key=> ENV['BLOCK_IO_API_KEY'], :pin => ENV['BLOCK_IO_PIN'], :version => 2

在使用环境变量的情况下,您无需将任何秘密提交到您的存储库中。

现在您应该可以在任何操作中调用 BlockIo.get_my_address