パフォーマンス監視サービス「New Relic」の iPhone アプリが登場!
- 2013 1/31
パフォーマンス監視サービス「New Relic」の iPhone アプリがリリースされたようです。
無料プランでしか使っていないのですが、手元で気軽に現在のパフォーマンスをチェックできるのは想像以上に便利ですね。
パフォーマンス監視サービス「New Relic」の iPhone アプリがリリースされたようです。
無料プランでしか使っていないのですが、手元で気軽に現在のパフォーマンスをチェックできるのは想像以上に便利ですね。
state_machine の国際化対応 (i18n)の方法をメモ。
・pluginaweek/state_machine · GitHub
■ config/locales/model.ja.yml
ja: activerecord: state_machines: order: state: states: accepted: 注文受付 firmed: 注文確定 cancelled: 注文キャンセル delivered: 発送完了 events: accept: 注文 cancel: キャンセル deliver: 発送 errors: models: order: attributes: state: invalid_transition: "%{value}状態では%{event}処理はできません。" |
そんでもって、human_state_name で使う。
o.human_state_name # => "発送完了" |
【参考】
・I18n documentation is missing · Issue #114 · pluginaweek/state_machine
Ruby on Rails で seed_fu のファイルを開発環境毎に分けてみました。
% ls -l db total 64 drwxr-xr-x 11 shigeoka staff 374 1 29 20:10 fixtures/ drwxr-xr-x 3 shigeoka staff 102 12 27 18:16 fixtures_development/ drwxr-xr-x 3 shigeoka staff 102 1 30 18:07 fixtures_production/ drwxr-xr-x 3 shigeoka staff 102 1 30 18:06 fixtures_staging/ drwxr-xr-x 76 shigeoka staff 2584 1 29 20:10 migrate/ -rw-r--r-- 1 shigeoka staff 18269 1 29 20:10 schema.rb -rw-r--r-- 1 shigeoka staff 343 12 4 23:32 seeds.rb |
どの環境でも共通のデータは、普通に fixtures ディレクトリ以下に設置しています。
その他は、development, staging などでインポートしたいデータが微妙に違ってくるので、suffix に環境名を付けたディレクトリを作って分けました。
それぞれの環境のseedデータをインポートするには下記のように FIXTURE_PATH を指定してあげます。
% rake db:seed_fu FIXTURE_PATH=db/fixtures_development |
そんでもって、development, stagingで共通のファイルは require で読み込むようにしています。
# db/fixtures_development/users.rb require "#{Rails.root}/db/fixtures_staging/groups.rb" |
こんな感じです。
ケータイ3キャリアに対応するためのDOCTYPE宣言というか、メインは文字化け問題の解決方法です。
head タグ内に charset で文字コードを指定することで、文字化けが解決します。
■ html の場合
<head> <meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS"> </head> |
■ xhtml の場合
<head> <meta http-equiv="Content-Type" content="application/xhtml+xml; charset=Shift_JIS" /> </head> |
・ケータイ3キャリアに対応するためのDOCTYPE宣言について | ke-tai.org – インフィニットループ
Sublime Text 2 で Package Control: Install Packages できない問題にハマって、無事に解決できたのでメモ。
Sublime Text や PC の再起動をしてもダメだったので、設定ファイル全部消しました。
下記のコマンドを実行して、Sublime Text 2 の設定ファイルをまるっと消すだけでOKです。
% rm -rf ~/Library/Application\ Support/Sublime\ Text\ 2/ |
もちろん、設定とか全部消えちゃうので、個人用カスタマイズや Package のインストールもやり直しです。
Sublime Text 2 で Package Control を使うようにするための設定方法をメモ。
1. Ctrl + ` で下の方にコンソールが表示されるので、下記のコードをコンソールにコピペして、Enterを押すとインストールが開始される
import urllib2,os; pf='Package Control.sublime-package'; ipp=sublime.installed_packages_path(); os.makedirs(ipp) if not os.path.exists(ipp) else None; urllib2.install_opener(urllib2.build_opener(urllib2.ProxyHandler())); open(os.path.join(ipp,pf),'wb').write(urllib2.urlopen('http://sublime.wbond.net/'+pf.replace(' ','%20')).read()); print 'Please restart Sublime Text to finish installation' |
2. 有効化するために Sublime Text を再起動する
3. Command + Shift + P で「Pacakge Controll」が Command Pallet に表示されていればインストール完了です
あとは、Package Control: Install Packages で色々パッケージをインストールしましょう。
Mac に Homebrew で nkf をインストールしました。
% brew install nkf ==> Downloading http://dl.sourceforge.jp/nkf/53171/nkf-2.1.2.tar.gz ######################################################################## 100.0% ==> Patching patching file Makefile ==> make ==> make install /usr/local/Cellar/nkf/2.1.2: 4 files, 252K, built in 2 seconds |
楽ちん
Ruby on Rails で、CSVのインポート/エクスポート機能を実装する上での参考情報をご紹介します。
Ruby 1.9 は FasterCSV が標準の CSV クラスとして採用されているので、require “csv” すればすぐに使える。
・Ruby on Rails Screencasts – RailsCasts
CSVインポート
・#396 Importing CSV and Excel – RailsCasts
roo というスプレッドシート(Open Office, Excel, Google Spreadsheetsなど)を操作する gem を使っている。
・roo:スプレッドシートを操るRubyライブラリ « TORQUES LABS
CSVエクスポート
・#362 Exporting CSV and Excel – RailsCasts
・Ruby1.9とRailsでCSV出力(SJIS) #Rails #Ruby – Qiita
・[rails] csvつくって出力するのよメモ | おれせか
CSVファイルはExcelから作成されることが多くて、文字コードをShift_JISからUTF-8へ変換して扱う必要があります。
その辺のノウハウがまとめられています。
・CSV を文字コード変換しつつロード #Ruby – Qiita
普通はテストで使う fixture_file_upload メソッドで CSV ファイルをアップロードしてから、モデルに追加したクラスメソッド import を呼び出してやります。
> include ActionDispatch::TestProcess > file = fixture_file_upload "tmp/test.csv", "text/comma-separated-values" => #<Rack::Test::UploadedFile:0x007fa36b03f960 @content_type="text/comma-separated-values", @original_filename="test.csv", @tempfile=#<File:/var/folders/46/bg9j7wkn5qg9n895016mlvk00000gn/T/test.csv20130124-12060-h3mn08>> > Product.import(file) (0.2ms) BEGIN ["a", "b", "c", "d"] ["1", "2", "3", "4"] (0.1ms) COMMIT => <#CSV io_type:File io_path:"/var/folders/46/bg9j7wkn5qg9n895016mlvk00000gn/T/test.csv20130124-12060-h3mn08" encoding:UTF-8 lineno:2 col_sep:"," row_sep:"\r" quote_char:"\""> |