すべてが本になる

日々の雑感、書評などを公開していきます。つまらない本などありません、つまらないと感じたならば、それは自分がその本の面白さを見つけられなかったのです。

AmazonEcsをRuby on Railsに組み込んだ

ふとミステリのデータベースサイトを作成しようと思い立ち、学生時代に研究で使用していたRuby on railsでアプリを作成しようと考えました。

 

以下のサイトを参考にとりあえずAmazonから書籍の画像とタイトルを取得することに成功しました。

 

qiita.com

 

私自身も工学部を出ただけのえせ理系であり、Qitaのような技術ブログに書かれたテキストは、基礎的な部分が省略されていることがほとんど。

そのため、ここでは、その省略されている部分と、私が詰まった部分を抽出して書いていきたいと思います。

 

まず、rails new によるプロジェクトの作成は良いでしょう。そのままターミナルに打ち込むだけ。

その後の、DBのバージョン変更ですが、これはプロジェクトのトップディレクトリにある、"Gemfile"を編集します。

その後、bundle installコマンドを入力。

 

  • routes.rb
  • プロジェクト名_controller.rb (books_controller.rb)

に関しては、作成されているはずなので、そのままコピペします。

  • プロジェクト名.rb (以下 book.rb)
  • search.html.erb
  • _book.list.html.erb
  • book_list.html.erb

こちらについては自動生成されないので、自分でファイルを作成します。

book.rbはmodelディレクトリに、~.html.erbはview内のプロジェクト名ディレクトリに作成。

 

続いて、amazonアソシエイトへの参加及びAPIアクセスキーの取得方法は参考サイトの通り。

 

ここで注意なのですが、この時点で、configディレクトリのapplication.rbに

require 'amazon/ecs'を入力します。

私はこれを入れることを失念していて、apiとの接続が出来ない旨のエラーを連発しました。

APIはなんでもそうですが、コンフィグファイルにrequireを書かないと動作しないのです。

後は参考サイトに従うだけです。

注意点としては、AmazonECSのシークレットキーはアクセスキーを生成した時にしか表示されないので、初期段階では作成されているアクセスキーだけでは、APIを使えないこと。

(注:参考サイトの作成時点では、アクセスキーに並んでシークレットキーが表示される仕様でした。)

 

出来上がった、書籍検索アプリはなんだか動作がもっさりしていますが、ググると対策が出ているようなのでこれから勉強します。

 

同じような部分で詰まっている方のお役に立てれば幸いです。

 

また、参考にさせていただいた記事の執筆者のtatsuki-m様。有力な情報を有り難うございました。

 

ところでこの記事に、エラーメッセージも付与できれば良かったのですが、メモを紛失。

こんなんだから似たようなエラーで躓くのですよねぇ。注意力という物を養いたいです。

 

 

参考書籍

 

たのしいRuby 第5版

たのしいRuby 第5版

 

 

Ruby on Rails 4 アプリケーションプログラミング

Ruby on Rails 4 アプリケーションプログラミング

 

 

参考サイト

qiita.com

qiita.com

openbook4.me