単独で動くプログラムをRails に認識させる
MVC のいずれにも属さないであろう処理の場合は、lib/
にファイルを設置するとよいかもしれません
lib/hello.rb
ruby
1module Hello
2 def self.say
3 'Hello'
4 end
5end
config/application.rb
ruby
1module MyApplicationName
2 class Application < Rails::Application
3 config.active_record.raise_in_transactional_callbacks = true
4
5 config.autoload_paths << Rails.root.join('lib') # lib ディレクトリを追加で読み込む設定
6 end
7end
つかってみる
たとえば以下のようにビューで利用することが出来ます
app/views/some_view_name/index.html.slim
slim
1p
2 = Hello.say
3/ Hello と表示される
(※slim を利用していますが、何も設定していなければerb を利用することになるでしょう)
そのあとは
- ビューに書いたボタンを押す
config/routes
に設定したコントローラの処理が呼び出される
- コントローラが
lib/
に設置したプログラムを呼び出す
といった流れを組めれば、動作させることができるかもしれません
Ruby プログラムとWeb ブラウザとの関係性をつかむために、はじめにSinatra を利用してみてもいいかもしれません
何か参考になれば幸いです
Links
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2015/10/05 06:25