yamotonalds's blog

Webアプリケーション開発における技術メモが中心です。たまにWebサービス、興味を持ったデバイス、自作PCに関する話題もあるかも。Amazon好きなのでAmazon.co.jpアソシエイト使ってます。

rails

rspec-rails3.0でのViewテストの書き方

rspec-rails3.0でのViewテストの書き方のメモ。 まずは公式に目を通しとくべき。 Upgrade - RSpec Rails - RSpec - Relish view spec - View specs - RSpec Rails - RSpec - Relish 重なる内容もあるけど個人的に気になった点を以下に記述する。 Capybaraのm…

i18n-jsを使っているRailsアプリケーションがHerokuにpush失敗する

Railsアプリケーションでi18n-jsを使ってみたところ、Herokuにpushする際にエラーが発生した。 ログを見たところ rake assets:precompile に失敗している模様。 発生したバージョンは以下の通り。 rails 4.0.2 i18n-js 2.1.2 ちゃんと解決しているのかは不明…

送信したメールの内容が確認できるLetter Openerが便利

メール送信が必要な機能を実装しているときに Letter Opener というライブラリを見つけた。 今までは開発中にメール送信が行われると自分個人のGmailから自分のメールアドレスに送信されるようにSMTP設定等を設定していたが、Letter Openerを使うと送信され…

ActiveMerchantでPayPalの定期支払い

PayPalの定期支払い(Recurring Payments)を実装したのだけれど嵌って大変だったのでメモ。 前提条件 activemerchant (1.34.0) 処理の流れ 公式ページを見るのが確実だった。 Integrating Recurring Payments | PayPal Developer APIの呼び出し順としては、 S…

OmniauthでTwitter認証(OAuth認証)

Twitterによる外部認証をやってみることにした。 Deviseを使っているのでOmniauthで楽にできそう。 以下のページを参考にした。 OmniAuth: Overview · plataformatec/devise Wiki · GitHub ASCIIcasts - “Episode 235 - OmniAuth Part 1” ASCIIcasts - “Epis…

rails consoleで日本語を使えるようにする

ちょっとしたコードの確認等でrails consoleを使うことが多いのだけれど、日本語を入力すると勝手に文字コードに変換されてしまっていた。 例えばコンソールで全角スペースを入力すると「U+FFE3」と表示される*1。 今まではそんなにコンソールで日本語を使わ…

ActiveMerchantでPayPal決済

PayPal決済を導入したのでその作業メモ。 各バージョンは以下の通り。 rails 3.2.13 activemerchant 1.34.0 vcr 2.5.0 最初、ウェブペイメントスタンダードが楽そうに見えたのだけれど決済後すぐに処理を行う必要があったのでエクスプレスチェックアウトに変…

deviseで確認メール無しでユーザーを作成する

deviseを使っていて :confirmable にしているとユーザー作成時に確認メールが飛ぶ。 一般ユーザーが新規登録画面から登録する場合はいいんだけど、管理者等が管理画面なりコマンドなりでユーザーを作成するときには確認メールは飛んでほしくない。 調べてみ…

deviseでlocaleが維持されない場合があったので対処

ユーザー認証にdeviseを使っているのだけれどlocaleパラメーターがデフォルトのlocaleに戻ってしまう場合があった。 具体的には既にログインしている状態でsign_in,sign_upページに遷移しようとした場合。リダイレクトされて「You are already signed in.」…

deviseでユーザーが自分自身のユーザーアカウントを削除できないようにする

Railsでユーザー認証を行うのにdeviseを使うことにした。 導入方法は公式GitHubに書いてる通り簡単だし日本語で説明しているブログもいくつかあったので割愛。 で、sign_up, sign_in, sign_outとかが簡単にできるようになったんだけどsign_upで作成されたユ…