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

时间:2016-10-05 13:28:11

标签: ruby-on-rails ruby ruby-on-rails-5

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

宝石和示例在: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 %>

我需要一些关于上述内容的指导,我们将非常感谢任何评论或帮助。

1 个答案:

答案 0 :(得分:0)

require 'block_io'可以像Gemfile一样进入gem 'block_io'。只要gem名称也是您想要从此gem中获取的文件名,Rails / bundler将自动为您提供。

BlockIo.set_options :api_key=> 'API KEY', :pin => 'SECRET PIN', :version => 2可以放入config/initializers/block_io.rb之类的启动器中。这种方式只有在Rails启动服务器或控制台或跑步者时才调用set_options

将此类似文件放入文件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

相关问题