アクトインディ開発者ブログ

子供とお出かけ情報「いこーよ」を運営する、アクトインディ株式会社の開発者ブログです

Rails

Rails アプリの JavaScript エラーの通知

こんにちは、tahara です。 Rails のエラー通知に Exception Notifier を使われてたりすると思いますが、 JavaScript のエラー通知はみなさんどうされているのでしょうか? ちょっと探してみたのですが、これだ! というもの見つからず、 PipelineDeals Dev Bl…

Asset Pipeline と Amazon CloudFront を導入

こんにちは、tahara です。 いまだに Asset Pipeline を使っていなかったいこーよですが、Amazon CloudFront とともに、ようやく導入しました。 温泉街の旅館のごとくページを増やしていたため、複数のレイアウトファイルが乱立しており、かなり大変な目にあ…

Rails のログを寡黙に

こんにちは、tahara です。 Rails のプロダクションログですが Started GET "/" for 127.0.0.1 at 2011-12-11 13:32:11 +0900 Processing by TopController#index as HTML Rendered shared/_login_box.html.erb (1.2ms) Rendered top/_header.html.erb (2.3m…

全件検索から全文検索へ (Rails で MySQL の全文検索)

こんにちは、tahara です。 ようやくいこーよを like '%foo%' の(SQL 力づく)全件検索から、MySQL の全文検索に変更しました。 最初は mroonga を使おうかと思ったのですが、結局は MeCab を使って MySQL の全文検索をそのまま使うことにしました。 MySQL の…

Rails での MySQL マスタースレーブ構成

いこーよ の GW の負荷対策として MySQL のレプリケーションを使いマスタースレーブ構成にしてみました。 一番悩んだのがマスタースレーブ構成のためにどのライブリを使うか。 次のような理由から seamless_database_pool をフォークして使うことにしました…

Rails 3.2.2 へのアップクレード (ssl_allowed が allowed されない件)

こんにちは tahara です。 先日 いこーよ を Rails 3.1.0 から Rails 3.2.2 にアップグレードしました。 今日はその模様を報告したいと思います。 まず Gemfile で Rails のバージョン指定を 3.2.2 にし bundle update しました。 gem 'rails', '3.2.2' Asse…

デプロイ時の Unicorn リスタートが失敗する件

こんにちは tahara です。 デプロイ時の Unicorn リスタートがときどき失敗して悩んでいました。 幸い本番環境では発生せず、ステージング環境と開発環境で発生していました。 リスタートは unicorn-4.1.1/examples/init.sh の upgrade を使っています。 upg…

Rails3 への移行

こんにちは、tahara です。 突然ですが、弊社では現在エンジニアを募集しています。 仕事内容は情シス業務と自社サービの開発です。 開発は主に Ralis で PHP もときどきあります。 たまぁに Common Lisp もあます(増やしていきたいです)。 詳細はこちらをご…

Lisp on Rails 第9回 〜 ビュー

こんにちは!! tahara です。 Objective-C づけになり、すっかりこぶさたしておりましたが Lisp on Rails 第9回です! 今回はビューです。 Common Lisp で ERB 相当を実装します。 Common Lisp で実装するからにはリードテーブルを使い、 HTML ファイルを関数…

Lisp on Rails 第8回 〜 before_*

こんにちは!! tahara です。 Lisp on Rails 第8回です! 今回は ActiveRecord::Base の save, create, update, destroy 等々のメソッドには beforo_* や after_* というフックメソッドを定義することができます。 ActiveRecord::Callbacks でそのあたりの実装…

Lisp on Rails 第7回 〜 ActiveRecord::Base の find メソッド

遅くなりました!! tahara です。 Lisp on Rails 第7回です! 今回は ActiveRecord::Base の find メソッドの機能を多少実装してみたいと思います。 ActiveRecord::Base の find メソッドは次の4つの使い方があります。 id で検索。 引数は (id, *args), (id1,…

Lisp on Rails 第6回 〜 ここらでリファクタリング

こんにちは!! tahara です。 Lisp on Rails 第6回です! has-one を has-many のコピペで書いてしまったので、 ここらでリファクタリングしたいと思います。 has-one のスロット定義 (defclass ar-has-one-slot-mixin () ((has-one :initarg :has-one :initfo…

Lisp on Rails 第5回 〜 has-one

こんにちは!! tahara です。 Lisp on Rails 第5回です! 今回は ActiveRecord の has_one アソシエーションもどきを実装したいと思います。 前回の has_many に瓜二つです。 ar-has-one-direct-slot-definition と ar-has-one-effective-slot-definition を定…

Lisp on Rails 第4回 〜 has-many

こんにちは!! tahara です。 Lisp on Rails 第4回です! 今回は ActiveRecord の has_many アソシエーションもどきを実装したいと思います。 前回の belongs_to とほとんど同じです。 ar-has-many-direct-slot-definition と ar-has-many-effective-slot-defi…

Lisp on Rails 第3回 〜 belongs-to

こんにちは!! tahara です。 Lisp on Rails 第3回です! 今回は ActiveRecord の belongs_to アソシエーションもどきを実装したいと思います。 実行時のイメージとしては次のようになります。 (def-record post) (def-record comment (:belongs-to post)) ; c…

CMYK

こんにちは!! tahara です。 今回は Lisp on Rails はお休みで、Ruby on Rails の Paperclip の話題です。 IE で RGB の画像は表示できますが、CMYK の画像は表示できません。 CMYK から RGB に変換する手もありますが、変換時に結構色が変ってしまいます。 …

Lisp on Rails 第2回 〜 メタクラス

こんにちは!! tahara です。 Lisp on Rails 第2回です! ActiveRecord::Base ではクラスメソッドとして find や all の検索メソッドが定義されています。 Common Lisp でそれらを実装するにあたり、メタクラスのメソッドとして実装してみます。 Common Lisp …

Lisp on Rails 第1回

こんばんは!! tahara です。 いま仕事で Ruby on Rails を使っています。 正直 Active Record いいっすねー。 DB いじるには楽です。 くやしいので Common Lisp でそれっぽいのを実装してみます。 Lisp on Rails ですね(何だか以前から聞く言葉のような気も…