bekkou68 の日記

Gogengo! や IT 技術など。

Ruby on Rails

スマホAPI の Controller 実装でよくつかう HTTPステータスコードの意図別まとめ

はじめに Rails でスマートフォン向けの API をつくっている時にどの HTTPステータスコードを返すか、自分なりの判断基準をまとめてみました。 Controller を実装している時によく返すステータスコードをイメージしています。 200 :ok 以下が正常に行われた…

Rails で iOS のプッシュ通知を実装する手順

(最終更新日: 2017/08/23) はじめに 自前でプッシュ通知を実装する手順をまとめます。サーバからクライアントまで。 この記事に書いてあること: プッシュ通知の疎通確認までの手順 個別送信の実装例 複数送信の実装例 デプロイ時の工夫 Feedback のハンドリ…

Rails サーバから Google Analytics API で情報を取得する手順 ーー google-api-ruby-client, OAuth

はじめに Rails サーバから Google Analytics API をたたいて情報を取得する手順をまとめます。 google/google-api-ruby-client · GitHub を使います。ログインだと Web で認可をもとめられる(後述)ので OAuth を使います。 日にちごとのスクリーンビュー…

Rails アプリを Travis CI で動かすためのメモ

.travis.yml を PROJECT_ROOT に追加 (2014/09/04 更新) language: ruby rvm: - 2.1.0 before_script: - mysql -e 'create database myproject_test;' notifications: hipchat: '<TOKEN>@<ROOM NAME>' # CI時に submodule を無視 git: submodules: false # bundle install をキ</room></token>…

Rails 3 + Nginx/Unicorn を Amazon AWS に Capistrano 3 でデプロイする

はじめに Amazon AWS 環境下で Rails 3 のアプリを Nginx/Unicorn で動くように Capistrano 3 でデプロイする手順をまとめました。 以下を前提に話を進めます デプロイ対象のアプリ/DBインスタンスはすでにつくられているとします デプロイ対象のアプリイン…

Protonight - Pair Programming Hack Session に参加しました

はじめに 残すところあと4日ほどで日本に帰ります。帰る前にもう一つイベントに参加したいなあと探して見つけたのが Protonight - Pair Programming Hack Session でした。 どんな場か 公式ページに詳しく書いてあります。かんたんにまとめると、 色んな人と…

date_select メソッドを呼ぶと can&#39;t convert Symbol into String とエラー

現象 date_select メソッドを呼ぶと can't convert Symbol into Stringというエラーが起きる。 解決策 ja.yml に order: からの4行を追加して解決しました。 ja: date: + order: + - :year + - :month + - :day 原因 config/application.rb において config.…

Rails で STI を使ったのでメモを残します

はじめに 自分用メモです。 参考 Ruby on Rails“シンプル”モデリング技法 - @IT Railsで単一テーブル継承(Single Table Inheritance) - 京の路 単一テーブル継承 (Single Table Inheritance) の上手な扱い方 - RAILS PRESS 実装ダイジェスト db/schema.r…

Rackレイヤーでリダイレクトする

きっかけ(2013/4/19 更新) D.D. を Gogengo! にリニューアルするにあたって、古いドメイン(http://www.ddic.jp/)を新しいドメイン(http://gogengo.me/)にリダイレクトしたくなりました。Railsアプリを Thin で動かしていました。例えばリダイレクトす…