rails

aws-sdk-railsでSQSをActive Jobのアダプターとして使っていたら、DBのPoolを消費しまくっていた件

aws-sdk-railsでSQSをActive Jobのアダプターとして使っていたら、 ActiveRecord::ConnectionTimeoutError (could not obtain a connection from the pool within 5.000 seconds (waited 5.000 seconds); all pooled connections were in use): というように…

Active StorageのPDFプレビューでUnrepresentableErrorが出る

ファイルアップロード機能に関して、ActiveStorage::UnrepresentableErrorが出ていた。調べてみるとPDFのプレビュー画像生成が失敗している模様。 [547a3405-8d8d-452a-ab91-a7ce23e920f7] ActionView::Template::Error (ActiveStorage::UnrepresentableErro…

rails dbconsoleでDBサーバーに接続する

今更感があるけど、rails dbconsole を利用すると、Railsで設定しているDBに、接続できるんですね。 $ rails dbconsole Enter password: Reading table information for completion of table and column names You can turn off this feature to get a quick…

RailsでKWIC

KWICと言っていいのか悩ましいところだが、検索結果で下記のようなことを行いたいケースは一般的だと思う。 検索語の前後x文字を表示 検索語を強調させたいときがある これをRailsで実現するには、viewに以下のように書く。 highlight(excerpt(article_body,…

Rails3.2でRails.logger.debug効かない…

Rails.logger.debug { "message" } # 何も表示されない Rails.logger.debug "message" # ブロック渡しやめる。表示される。 便利に使っていたのですが、Rails2.3にアップグレードしてからログに何も表示されなくなりました。ブロック渡しをやめたら動きまし…

mongoidでログに色付ける

mongoidは便利で出来る子だが、ログに色付いていないのがいまいち。ということで色を付けましょう。Gemfileに以下を付け加える。 group :development, :test do gem 'mongoid_colored_logger' end

counter_cacheは、合計値を計算しているわけではないようだ

まぁ、APIに書いてあるから説明するのもどうかと思うんだが、日本語での情報は見た記憶がないので誰かのために残しておく。 class Comment < ActiveRecord::Base belongs_to :article, :counter_cache => true # counter_cacheを有効にする際には、予め arti…

全国お気軽Railsハッカーの皆さん。ホスティングにカゴヤ・クラウド/VPSはいかがっすか?

お気軽Railsハッカーってなんだよというツッコミは置いておいて、VPSの普及のお陰でRailsのホスティングは随分と改善されたように思います。でも、サーバーのセッティングって面倒ですよね。慣れないサーバーの設定するくらいなら、アプリの開発に注力したい…

AjaxのPOSTでsessionが取得できない

RailsでjQueryなどの今時なライブラリを使わずにAjaxに挑んだメモRailsでフツーのGETではsessionが取得出来てるのに、AjaxでPOSTしたときはなぜかsessionが取得できない。POSTだから? Ajaxはセッション使えない? まさかjQueryがその辺上手く処理してた? …

RMagick - ImageMagick間のバージョンを無視したい

RMagickをインストールするときに、ImageMagickとバージョンが合わなかったりするとき有りますよね。 This installation of RMagick was configured with ImageMagick 6.6.7 but ImageMagick 6.6.9-9 is in use. こんなエラーを見ると大変憂鬱になります。か…

モデルの変更値や差分を取得する

モデルの変更状態を知りたいときってありませんか? 2年前くらいに差分を求める汚いコードを書いた記憶があったのですが、まさかActiveRecordに実装されていたとは…ねぇ。 # Map of changed attrs => [original value, new value]. person.changes # => {} p…

RVM

[~@rish]ruby -v ruby 1.8.7 (2009-06-12 patchlevel 174) [universal-darwin10.0] [~@rish]echo $GEM_HOME [~@rish]rvm 1.9.2 [~@rish]ruby -v ruby 1.9.2p180 (2011-02-18 revision 30909) [x86_64-darwin10.6.0] [~@rish]which ruby irb rake gem /Users/…

Ruby1.9にしたら invalid multibyte char (US-ASCII)

遅ればせながらRVMを導入し、Ruby1.9.xを導入したら、「invalid multibyte char (US-ASCII)」というエラーが出た。 So Ruby 1.9 rejects to parse any file with non-ASCII characters if you don’t specify the encoding. You can do so by adding a Ruby c…

Rails3でHaml その2

前回:Rails3でHaml - 屑プログラマの憂鬱以前、Rails3でXML(Atom)出力をしたのだが、冒頭に というXMLの宣言が出なかったため、おかしいと思っていたのだが、やはり自分のミスだったようだ。`config/environment.rb` に、 Haml::Template.options[:format]…

rails-footnotes

rails-footnotesを利用すると実際にアプリケーションを動かしながらデバッグ中に見たい情報が見られる。例えば、paramsの中身とか動いたDBのクエリーなど。標準では、development環境のみ動作するので開発時に非常に便利。これは動かせるようにするっきゃな…

Rails3でHaml

HamlでHTMLを出力しようとは思わないのですが、XMLの場合は別です。噂ではrailsでテンプレートエンジンのごちゃまぜは出来ないという噂を聞いていたのですが、試して出来たのでメモっておきます。今回は、Atom出力にしてみましたが、拡張子をXMLにすることも…

エラーの日本語化

3 errors prohibited this #{model_name} from being saved: ここの部分だけ日本語化忘れる。いけね。rails-i18n/rails/locale/ja.yml at master · svenfuchs/rails-i18n · GitHubを「#{RAILS_ROOT}/config/locales」に保存後、 <%= pluralize(@account.erro…

ActiveRecord::RecordNotSaved – before_save問題

test "save" do address = Address.new(valid_address) assert address.save end こんな簡単なテストが通らないと思ったら、「ActiveRecord::RecordNotSaved」が発生してた。Addressモデルには、before_saveで以下のように記述してある。 before_save { self…

Factory Girlで関連でハマる

presence_ofでエラーが出る。もう、Fixtureでいいんじゃないかと自己暗示をかける日々。

datetime_selectで、秒(second)のセレクトボックスを表示させる

datetime_select("post", "written_on", :include_seconds => true)

ActiveRecord.find( (1..20) )

こういうのって、需要あるのかな?

Multiple Checkboxes with 'has_many through' AND 'accepts_nested_attributes_for'

railsにおいて、予め選択肢をいくつか用意し、チェックボックスで複数回答してもらいたいときがある。ところが、Viewで現れるのは複数個のModelため、これをRailsで表現するのは、少し手間がいる。自分の場合、上手くいくまで試行錯誤したので、忘れないよう…

page_attachmentエクステンションで、画像をリサイズする。

page_attachmentエクステンションを利用すると、Wikiの様にページごとに画像を添付することができる。でも、リサイズをしてくれなかったりするのでその辺を改良。このextensiongがRailsのプラグインであるattachment_fuを利用していたので簡単に改良できた。…

TextMateライクなWindowsの「E Text Editor」

Railsの開発にMacが支持される理由の1つにTextMateというエディタの存在は大きいでしょう。それほどTextMateは使いやすく、多くのプログラマが愛用しています。WindowsにもTextMateを模したIntypeというエディタがありますが、常用するには機能不足でした。…

Railsでデスクトップ←→Webアプリケーションだ!

コアになるのは、ディベロッパーがRailsアプリをデスクトップ上で構築でき、シンプルでずれのないデータの同期化行い、オフラインで動作させることができるという点。 TechCrunch Japanese アーカイブ » Apolloにライバルサービス出現中から。全てのアプリケ…

Feedの読み込みにはFeedToolsが便利。

AtomもRSSも統一的なインターフェイスでアクセス可能。 一番最初に使えばよかった…。次は、 取るデータ属性を増やす。 サイトに優先度を与えてやる。LivedoorReaderでいう☆の数。 UIの再考 Login機能&管理画面 といったところか。溜まりに溜まったRSSを何と…