2010年08月23日のツイート
@babie: 仕事に関する本を読み終わったけど、完全に取り込むためにもう一度読まないとなー
@babie: @a_matsuda あーいえいえ、てきとーに相手してください^^
2010-08-24 03:34:27 via Seesmic to @a_matsuda
@babie: @papanda1234 細かいなw イイ!
2010-08-24 00:28:08 via Seesmic to @papanda1234
@babie: @papanda1234 あー、いいね。神社でチェックインすると、そこの祭神を召喚できるとかね!
2010-08-24 00:25:28 via Seesmic to @papanda1234
@babie: 夏休みの自由工作で「垢太郎」を作っているんだけど、アレだな、垢太郎は黒人だな。
@babie: @papanda1234 いやー、魔族召喚アルゴリズムが難しくってさー、Google が API 公開してくれたらいいんだけどw
2010-08-24 00:17:38 via Seesmic to @papanda1234
@babie: いや、マジな話、デジタルデビルサーガは位置情報+ARと組み合わせたらすんげー面白いと思うんですよ。
@babie: Google が10の100乗であんだけおっきな会社になれたんだから、「不可説不可説転」(10の37218383881977644441306597687849648128乗)って会社名にすれば、Google に勝つる!!
@babie: 実は位置情報ゲームには色々引き出しがあります。いつか使えないかなー、と貯めてる。
@babie: @Dominion525 数えようと思ったけど諦めたw 承太郎のオラオララッシュはオラ52回+オ1回です。昔数えました。
2010-08-23 23:51:43 via Seesmic to @Dominion525
@babie: はうー、突然オレンジジュースが飲みたくなった。ポンジュースな!
@babie: @Dominion525 ばぁれたかぁ?!
2010-08-23 23:40:16 via Seesmic to @Dominion525
@babie: @Dominion525 俺「ダイヤモンドアイ」知ってるほど年くってないからwww
2010-08-23 23:37:12 via Seesmic to @Dominion525
@babie: @Dominion525 バレたーww
2010-08-23 23:30:50 via Seesmic to @Dominion525
@babie: アカウント乗っ取られたらごめんね?
@babie: ナチュラル系のファッションって、レゲエっぽいやつですか?
@babie: 「先生!ガンジャは野菜に入りますか?!」
@babie: アニメ見ながらパスタ食おうかな。
@babie: は、はらへ……
@babie: あー、スラムダンクもまた読み直さないとなぁ……
@babie: @Leosixteen 俺も見てぇよww最低1年は覚悟してる……
2010-08-23 22:05:53 via Seesmic to @Leosixteen
@babie: 「ゴンさん」は、作者の意図を超えてキャラが暴走した好例だろうなぁ。どんなペナルティをつけるか迷ってるんじゃないかなぁ。
@babie: @RandolphCarter OIAXさんとこが「もっとお母さんみたいに教えてくれ」るって感じかも。 URL
2010-08-23 21:30:51 via Seesmic to @RandolphCarter
@babie: 別に公開しても良さそうな質問がDできた。事前情報なしで開陳して、みんなをびっくりさせるつもりかな? 楽しみ。
@babie: 面白いな。インデックスの再作成の問題があるから、実用はちょっと考えるけど。QT 夏休みの工作2:MongoDB で全文検索エンジン - yosshyの日記 URL
2010-08-23 20:56:47 via web
@babie: @Strawballey そういえば「クソが」と吹っかけたはいいものの相手の方が正しかったので「すいません、私がクソでした」と謝ったことがあります。私の自尊心は高いけど細いのですぐ折れますw。
2010-08-23 20:53:50 via Seesmic to @Strawballey
@babie: @Strawballey そんなとこですかねー。ODM ってのも確立された言葉なんかどうか微妙なところありますからねー。
2010-08-23 20:34:53 via Seesmic to @Strawballey
@babie: ただいまー。
@babie: @Strawballey ごめんなさい、ネタです。侮辱するのは悪いのは全くその通りというか自業自得です。
2010-08-23 20:24:00 via Seesmic to @Strawballey
@babie: nazoking, todesking に続いて、Heroku を根城にする heroking というIDはいかがでしょうか。
@babie: もうちっと頑張りますかねー
@babie: 「口は災いの元」なんですが、ネット上だとその災いも楽しめちゃうところに、俺のアレがアレだなー。
@babie: おなかいっぱい。
@babie: ハラヘリオン
@babie: ブレインストーミングやってるわけじゃないんだから、議論で発散させるなよ、っつー。
@babie: 「愚者は経験に学び、賢者は歴史に学ぶ」
@babie: 話のスコープを限定できない(話があっちこっちに飛ぶ)人とは議論にならないから、無視することにした。スコープ重要。
@babie: @chibakick 歴史を読むという作業は、教えられたことをそのまま受け入れることでなく、主体的に情報を読む作業です。あなたの受動的で相対的な歴史観に私は与しません。
2010-08-23 11:56:01 via Seesmic to @chibakick
@babie: git-core をアップグレード。
@babie: 「アホか」「クソが」を常用するので、話しかけてくれる人がどんどん減っていきます。ふしぎ!
@babie: 昼日中にさわやかな一陣の風のようなツイートをしてしまった。
@babie: 俺のブログに「Mongoid は ORM じゃなくて ODM ではないでしょうか?」とか言ったコメントが来てもいいはずなのに。来ない。あれか!「触らぬ神に祟りなし」か!?俺は生きながら神になったのか?生き神さまか?しかも怨霊系の奴か?
@babie: もっ、もっもっ
@babie: @inao あ、パフォーマンスの実測値も見たい。memcached に引けを取らないとか、MyISAM や InnoDB のN倍速いとか。自分で調べるのは面倒なので〜。>「どういった情報」
2010-08-23 11:09:31 via Seesmic to @inao
@babie: 有線卵・無線卵を取り扱う回線問屋(ネットワーク屋さん)。
@babie: Mongoid の翻訳もあと1回(2記事)で終わるなぁ。次何か読みたいのある? Rails 3 関連で。Heroku と Heroku Add-on と A/Bingo と IneheritedResources と Nesta についてはいつか書きたいと思っている。
@babie: リアルがあるアンリアルガール
@babie: @inao あと、やっぱJOINがないので、リレーションで作るとクエリが多めになってしまうのが、悩みどころかな。トランザクションもないし(エンベッドされたドキュメントならアトミックに更新できるけど)。
2010-08-23 08:52:37 via Seesmic to @inao
@babie: @inao どういったケース>高アクセスサイトで、完全にRDBMSを置き換える代替として。KVSよりも豊かなクエリが決め手でした。どういった情報>モデリングのコツですかね。普通のリレーションとエンベッドの2つがあって、なかなか難しい。あとそのリファクタリング。 #wdpress
2010-08-23 08:50:28 via Seesmic to @inao
Rails3 対応 MongoDB ORM、Mongoid 詳解―Rakeタスク
Mongoid は Rails 3 環境で以下の Rake タスクを提供します。
db:create | 依存関係のために存在します。実際には何もしません。 | |
db:create_indexes | モデルから全てのインデックス定義を読み取り、データベースにそれらを作成します。 | |
db:drop | システム用コレクションを除いて、全てのコレクションをデータベースから削除します。 | |
db:migrate | 依存関係のために存在します。実際には何もしません。 | |
db:schema:load | 依存関係のために存在します。実際には何もしません。 | |
db:seed | db/seeds.rb からデータベースに初期データを作成します。 | |
db:setup | インデックスを作成し、データベースに初期データを作成します。 | |
db:test:prepare | 依存関係のために存在します。実際には何もしません。 |
Rake タスクは以上です。
Rails3 対応 MongoDB ORM、Mongoid 詳解―インテグレーション
CARRIERWAVE
ファイルアップロードを扱う Carrierwave は Mongoid をサポートしています。現在のところ、ファイルと S3 に格納することを指定できます。:mount_on オプションがアップローダークラスに定義されてない場合は、ファイル名が アップローダー名_filename をフィールド名として、格納されます。
class User include Mongoid::Document mount_uploader :avatar, AvatarUploader #field is avatar_filename end
CUCUMBER
MongoDB はトランザクションをサポートしていないので、それぞれのフィーチャーが実行される前に、データベースがクリーンになるように、Cucumber にフックを追加したいと思います。
features/support/hooks.rb:
Mongoid.master.collections.select do |collection| collection.name !~ /system/ end.each(&:drop)
もし、database_cleaner という Gem を使っているなら、代わりに、features/support/database_cleaner.rb を作成してください。
require 'database_cleaner' DatabaseCleaner.strategy = :truncation DatabaseCleaner.orm = "mongoid" Before { DatabaseCleaner.clean }
RSPEC
Cucumber と同じように、RSpec の use_transactional_fixtures は Mongoid では影響しません。スイートを実行した後、データベースをクリーンにすることができます。
spec/spec_helper.rb:
Rspec.configure do |config| config.after :suite do Mongoid.master.collections.select do |collection| collection.name !~ /system/ end.each(&:drop) end end
おまけに :each の後何かすることもできますが、たくさんのインテグレーションスペックがある場合、遅くなるので注意してください。
もし、database_cleaner という Gem を使っているなら、代わりに、spec/spec_helper.rb の RSpec コンフィグブロックで以下の行を付け足してください。
Rspec.configure do |config| require 'database_cleaner' config.before(:suite) do DatabaseCleaner.strategy = :truncation DatabaseCleaner.orm = "mongoid" end config.before(:each) do DatabaseCleaner.clean end end
DEVISE
Mongoid で動くように Devise をセットアップするためにやることは、ActiveRecord を呼び出しているところを削除して、Mongoid に置き換えることです。
config/initializers/devise.rb:
# ==> ORM configuration # Load and configure the ORM. Supports :active_record (default), # :mongoid (bson_ext recommended) and :data_mapper (experimental). require "devise/orm/mongoid"
PASSENGER
MongoDB ウィキでは、Passenger の Smart spawning が有効なとき(デフォルトでは Conservative spawning です)、イニシャライザでインクルードする必要があると警告してますが、Mongoid では、特に何かする必要はありません。Passenger がこのモードで起動しているとき、ワーカーがフォークされたら、Mongoid はそれを検知し、再接続するようになっています。