Rails

OpalでJavaScriptの要らない開発

は、無理ですけど。 Best Casino Sites in UK - Play at Best Online Casinos in 2018! このコードトランスレータによって、それに近いことは可能になります。 導入や実際の使い方はドキュメントや解説記事に任せるとして、1週間ほど使ってみて分かったこと…

Passing a template handler in the template name is deprecated.

render_to_string( :partial => "tags.html.erb", :locals => { :tags => @user_product.tags, :user_id => @login_user.id } ) はDEPRECATION WARNINGが出る(Rails3.2.0.rc2)。 render_to_string( :partial => "tags", :formats => :html, :handlers => :er…

Ajaxの周りで。

Rails3ではPrototypeHelperが廃止されて、form_for_remoteとかが消えた。その代わり、form_forに :remote => true を渡すことでAjaxなフォームが作れるようになる。 ただし、今までnew Ajax.Requestする前やリクエストの完了後などにJSで処理をさせる場合に…

勝手にクリア。

Railsのキャッシュは基本的に、次のような挙動をする。 ページがリクエストされた際にキャッシュが生成され、保存される データベースが更新されると、あらかじめ定義されていたSweeperが動いてキャッシュが破棄される この仕組みのキモはSweeperで、DBの更…

同時に消えて欲しいのです。

Railsは遅い。というより、静的なHTMLなりなんなりを単に送り返すより動的に内容を作って送り返す形だとRailsに限らずなんだって遅いのは当然。 だから、ページキャッシュを多用すれば高速なアプリケーションが作れる。ただし、困るのがユーザーに合わせた内…

書く、手助け。

NetBeans6.1によるRuby on Rails開発環境構築手順書:CodeZine この記事を参考に、NetBeansのRailsサポートをテストドライブしてみました。Tiger(OS X 10.4.11)ならJDKのインストールは不要で、即NetBeansのインストールをすれば準備完了。 Railsの環境は既…

Rails2.1でacts_as_searchable。

Railsを2.1にしたらacts_as_searchableを使ったアプリケーションで例外が出るようになった問題、解決編。 このプラグイン、Hyper Estraier側のインデックスを更新するかどうか判断するために、ARオブジェクトが更新されたのかどうかを自力で管理していたみた…

分かった!

おそらく原因はacts_as_searchable。引き続き直し方を探します。

原因不明。

Rails2.1に移行してから、あちこちでこんな例外が出るように。 The error occurred while evaluating nil.include? 実際に発生してるのは activerecord-2.1.0/lib/active_record/dirty.rb:126:in `write_attribute' らしい。なんだろうこれ。

気を引き締めてやった方がいいかな。

うちの3サービスをRails2.1へ移行しました。 だいぶ変わった点があるようで、単にgem updateを打つだけじゃ済まないので移行はある程度時間を確保してやった方が良さそうです。 以下、作業内容。 gemのアップデート $ sudo gem update boot.rbの書き換え RA…

すぐやらなきゃいけないことと、それ以外と。

月燈火のサーバ負荷がどうしようもない状況になってきたので、改修する必要が出てきた。何が足を引っ張っていたのかというと、登録されているフィードを巡回して新着記事を取得、要約して類似記事を探すという一連の処理。 この処理はcronで1日1回実行され…

Amazonを見るいくつかの方法。

RubyでAmazon Web Serviceを使う場合、よく使われてるのはruby-amazonを使う方法。だけど、これは古いAPIを叩くのであと2日もたない。 これからもしばらくは使える方法なら、次のライブラリを使えばいいみたい。 amazon-ecs ruby-aws どっちもgemで一発イン…

あれのような。

Diggライクなサイトを作ってみようと思って*1、使えそうなアプリケーションを探した。yumenosora.netに収容することを考えて、Rails製で探すとGrabTheMicをみっけた。 だけどこれ、だいぶ前に開発が止まったらしくRails2.x仕様ではない。ので動くように最低…

メンテナンス完了と、タイムスタンプの謎。

今日のメンテナンスで、kawanishiプロジェクトの成果物を本番環境にマージしました。より信頼性の上がったエディタとの他、OpenID認証によって使えるアカウントの幅が広がったのが大きな成果かな。 ところで、いくつかデータベースの更新時にタイムスタンプ…

あまり丈夫じゃない。

AP4RをActiveRecordStoreで動かして、バックエンドをSQLite3で試験中です。 だけど、しばらく運用するとSQL logic errorが多発して動かなくなる。一度に大量のクエリを流すと発生するらしいけど、どうしたものかな。 設定はこんな感じ。 --- store: type: ac…

無制限って言ったのに。

SQLiteのtext型(とblob型)はサイズ無制限のはず。ディスクの許す限り格納できる。 なのになぜSQLite3::TooBigExceptionが出るんですか!それも数テラ放り込もうとしてるわけ無くて、たかがメガバイトオーダーなんに。 ARかRubyバインディングのバグかな?と…

これは新しい?

Railsを2系に入れ替えてからscript/generateでコントローラとビューを同時に生成させると、従来の.rhtmlでは無く.html.erbと言うのが出来た。 中身は同じERbテンプレートらしい。

OpenIDその後。

こないだ書いたRailsアプリケーションでOpenIDを使う記事だけど、ruby-openid2.xが出てそのままじゃ通用しなくなりました。RubyGems1.0以降ではruby-openidの1.x系は使えない*1から、移行必須。 結構変わっているようなので、アプリケーション側に手を入れる…

盲点。

Rails2.0が出たのでlight featherも動作するか確認。基本的に新規開発なので、ログに出るワーニングは潰してたから2.0仕様のはずだったんだけど、OpenIDでのログイン処理でこけた。 この記事に書いたとおりやったんだけど、openid_generatorが吐き出すコード…

もうみんなOpenIDに。

はてなもようやくOpenID providerになったということで、試してみたんだけどこれはいい。 (そういう仕組みなんだから当たり前だけど)OpenIDで認証制御をするように実装さえすれば後は触らずとも、複数の認証サービスに対応できる。新たにOpenID providerが…

名前を変えてはいけない。

Rails+PostgreSQLで、Fooというモデルがありfoosってテーブルがあるとする。このモデルの名前をBarにしたいとき、テーブルはMigrationの定義を書けば変更できる。 class FooToBar < ActiveRecord::Migration def self.up rename_table :foos, :bars end def …

どうせ書くなら。

どうしてscaffoldingはbooleanなカラムに対してcheck_boxじゃなくてselectでtrue/falseを作るのだろう。しかもDBにどう書かれているかにかかわらず初期状態がfalseになってる。管理画面でもない限りこのまま使うことはないからそのときに手で書き換えればい…

これからのpaginate。

Rails2.0では今まで使ってたpaginateが無くなるので、別途プラグインが必要。次の記事で紹介されてたpaginating_findを使ってみました。 徒然なる開発メモ : will_paginate or paginating_find プラグインとしてインストールしたら、今までのこんな感じのコ…

締め切りまであと少し!

Drecom Award on Rails 2007一般審査・投票の締め切りまであと1時間切りました。気に入った方はお早めに投票お願いします!!

ようやく本運用に。

本サーバの運用にめどが付いたので、月燈火のシステムを移します。6時間とかとんでもないメンテ時間を予定してるけど、これ、おおかたがインデックスの再生成に費やされる予定。今の仮サーバよりは高速なんだけど、現在のデータを持ち込んでサーバ側で再生…

ぎりぎりアウト、じゃない。

Award on Rails応募作品の試験運用を開始しました。推奨ウェブページ提示サービス「月燈火」です。 はてなブックマークやlivedoor Clipなどのソーシャル・ブックマークにプラスして、あなたに合わせたページを提示するサービスで、SBMを公開で使っているなら…

ひどいことになるので。

DRECOM Award on Rails 2007にエントリーしました。応募するアプリケーションはまもなく運用を開始する予定です。お楽しみに。 acts_as_searchableを使ったアプリケーションを運用中、Hyper Estraierのインデックスが破損した場合などはModel#reindex!を使っ…

一筋縄ではいかない。

テスト用のDebian環境に開発中のRails appをコピーして動かしてみるとAP4Rが動かず。 Debian etch PostgreSQL8.2(etch-backportsからaptitudeで) postgres Rubyバインディング(RubyGemsから) AP4R(svn head) user@debian:~/trunk$ ruby script/mongrel_ap4r …

終わらんよ。

AP4RのMongrelを再起動したときの挙動ですが、修正が入り、再起動後やり残したタスクが順次流されるようになりました。迅速な対応感謝です。

止めると終わる。

AP4RでメッセージストアをPostgreSQLにして運用中、キューにまだタスクがある状態でAP4RのMongrelを止める。その後Mongrelを起動し直すと、キューの中身で実行されていない物は無視されるみたい。Disk StoreやMySQL Storeの場合は再起動後残りのタスクが実行…