maeshimaの日記

メモ書きです

2011-04-01から1ヶ月間の記事一覧

rvm wrapper

rvm wrapperは指定した ruby と gemset でrubyを実行できるコマンドを生成する。passengerとかで使われてる。 rvm wrapper 1.9.2@hoge fuga とすると、1.9.2 で gemset hoge の状態で実行できるコマンドが生成される ./rvm/bin/fuga_ruby ./rvm/bin/fuga_irb…

javascript_include_tagは複数の引数をとれる

一つだけかと思ってた>< javascript_include_tag "common.javascript", "/elsewhere/cools" # => <script type="text/javascript" src="/javascripts/common.javascript"></script> <script type="text/javascript" src="/elsewhere/cools.js"></script>

load

loadの第二引数にtrueを指定すると、第一引数で指定したファイルの実行時に無名モジュールを作成して定数の衝突を避ける。 requireの違い require は同じファイルは一度だけしかロードしませんが、 load は無条件にロードします。また、require は拡張子 .rb…

キーバインドを設定する関数 define-key と global-set-key の違い

define-key global-map global-set-key global-set-keyは単にdefind-keyをラップしているとのこと。この二つに大きな差はないらしい。何がグローバルセットキー`の違いは`と`を定義キーのグローバルマップは、`Emacsで

sudo-ext.elがうまく動かない件

3ヶ月前にsudo-ext.elがうまくいかない><というエントリを書いたら、id:rubikitch さん、id:handlename さんからアドバイスをいただきました。ありがとうございます!!!Macでsudo-ext.elを使う場合 - handlename::blog sudo-ext.elがうまく動作しない場…

ActionView::Helpers::TextHelper

Railsはかゆいところに手が届くなー。メモ truncate(text, *args) textが:lengthで指定した文字数より大きかった場合に、:lengthで指定した文字になるまで切り詰めて、:omission(デフォルトは"...")を末尾に付ける。これどうせバイト単位で日本語だとうまく…

はじめる!Cucumber第7〜9章

シナリオアウトライン 検証シナリオのおおよその流れ(アウトライン)自体は同じまま、複数のデータの組み合わせをテストするための機能。 "シナリオ"を"シナリオアウトライン"に変更する "bob"とか"alice"のようなデータ類を""のように<>を使った文字列に変更…

ログ削除のrakeコマンド

log配下の*.logのサイズを0にするrakeコマンド rake log:clear

RailsCasts - Testing JavaScript with Jasmine

Railscasts - Testing JavaScript with Jasmineを見て。jsのユニットテスト環境 jasmineについて。基本的にRspecライクな書き方でjavascriptのユニットテストを実行することができる。すごく使えそう!!! rake jasmine でサーバ立ち上げてアクセスするとテ…

はじめる!Cucumber第6章

基礎は終わったのかも。主にシナリオをリファクタリングするテクニックについて。 背景 背景を使うと、各シナリオで共通の箇所を一箇所にまとめることに出来る。これってフィーチャ内の全てのシナリオで共通なのかな?→共通のようだ 複数のステップを呼び出…

seeds.rbについて雑感

seeds.rbはmigrationにデータを変更するコードを書くのをやめよう!という思想が入ってるらしいけど、データの初期化はともかく、運用途中でデータを変更するのは結構めんどそう。マスタデータ変更系でもseeds.rb使った方が良いんだろうかRails 2.3.4で追加…

elispの関数

やさしいEmacs-Lisp講座の第三章に出てくる関数をざっとまとめたメモ。 移動境界の検査 bobp ポイントがバッファ先頭にあればt,なければnilを返す eobp ポイントがバッファ末尾にあればt,なければnilを返す bolp ポイントが行頭にあればt,なければnilを返す …

auto_link

Rails3.0.6ではauto_linkの脆弱性が修正されたらしい。auto_linkは文字列中にあるURLやメールアドレスにaタグ付けて返すメソッド。あんまり使わないから忘れがちなんだけどこの際覚えよう。 post_body = "Welcome to my new blog at http://www.myblog.com/.…

空文字をカラムに代入したときの挙動

textやstringのカラムに空文字代入して保存したときにnilになるのか空文字になるのかよくわかってなかった。空文字代入のときは空文字が保存されるみたいね。integerや datetime は空文字代入したら nil になる(当たり前だけど)。

Enumerableその1

メモ Enumerable#cycle object.to_a.cycle と同じ Enumerable#drop オブジェクトの最初の n 個を捨てた配列を返す。非破壊的。Enumerable#firstと対をなすメソッド ary = [1, 2, 3] ary.drop(2) #=> [3] ary #=> [1, 2, 3] Enumerable#drop_while ブロック内…

BBモバイルポイントに接続

ずーっとつながらなくて諦めていたのだけれど、今日ローカルのDNSを使うように設定(127.0.0.1)していたのを削除してみたらつながった。 追記 firefoxだと認証ページへ遷移しない。chromeだといけた

ASCIIcasts - Decent Exposure

ASCIIcasts - “Episode 259 - Decent Exposure”を読んで。decent_exposureという、コントローラでインスタンス変数に値をセットする部分を簡単にするgemについての記事。 def show @article = Article.find(params[:id]) end のような、コントローラ中に書く…

セグメンテーション違反

アクセスが許可されていないメモリ上の位置、もしくは許可されていない方法でメモリ上の位置にアクセスしようとするときに起こる 参考 セグメンテーション違反 - Wikipedia

Redisの特徴

キーバリューストア LIST, Set(重複のない集合), SORTED SET(ソート済みの集合), HASH(連想配列)が扱える. 基本はインメモリだけどディスクでも使える。ただしいまのところディスク使うと不安定 参考 ニコニコ生放送に見る Redis 活用ノウハウ:第1回 インメ…

bundle install --local

rubygems.orgに接続せずに、vendor/cacheを使うオプション