カテゴリー : 2012年 5月

[Heroku] WebServer を WEBrick から thin に変更する方法 – [Rails 3.x on Heroku/Cedar]

単に Heroku に Rails アプリをデプロイしただけの最初の状態では、Webサーバーは WEBrick で動いています。

$ heroku ps
Process  State         Command                            
-------  ------------  ---------------------------------  
web.1    idle for 94h  bundle exec rails server -p $PORT

Webserver

By default, your app’s web process runs rails server, which uses Webrick. This is fine for testing, but for production apps you’ll want to switch to a more robust webserver. We recommend Thin.

To use Thin with Rails 3, add it to your Gemfile:

gem 'thin'

Run bundle install to set up your bundle locally.

■ Procfile の作成・追記

web: bundle exec rails server thin -p $PORT -e $RACK_ENV
echo "RACK_ENV=development" >>.env

.gitignore に .env を無視するように追記します。

# Ignore Heroku for local config
/.env

■ Foreman のインストール

$ gem install foreman

■ Foreman の起動

Foreman を起動して、ブラウザから http://localhost:5000/ にアクセスして、確認します。

$ foreman start

■ Heroku へデプロイ

$ git add -A
$ git commit -m "use thin via procfile"
$ git push heroku

■ thin で起動しているか確認する

$ heroku ps
Process  State        Command                               
-------  -----------  ------------------------------------  
web.1    idle for 4m  bundle exec rails server thin -p $..

以上です。

【参考】

Getting Started with Rails 3.x on Heroku/Cedar | Heroku Dev Center はてなブックマーク - Getting Started with Rails 3.x on Heroku/Cedar | Heroku Dev Center

The Process Model | Heroku Dev Center はてなブックマーク - The Process Model | Heroku Dev Center

Fiberを使ってem-http-requestとかを同期的に呼び出す – daily gimite はてなブックマーク - Fiberを使ってem-http-requestとかを同期的に呼び出す - daily gimite

Issue #13: FiberError with Rails 3.1 on Heroku · mperham/rack-fiber_pool · GitHub はてなブックマーク - Issue #13: FiberError with Rails 3.1 on Heroku · mperham/rack-fiber_pool · GitHub

mperham/rack-fiber_pool · GitHub はてなブックマーク - mperham/rack-fiber_pool · GitHub

[Ruby][RVM] gemset global に Heroku をインストールする

Ruby の バージョン管理システム RVM にて、どの gemset の状態でも使える gemset global に Heroku をインストールしました。

$ rvm gemset use global
Using /Users/bakorer/.rvm/gems/ruby-1.9.2-p290 with gemset global
 
$ gem list
 
*** LOCAL GEMS ***
 
bundler (1.0.22)
 
$ gem install heroku

以上です。

【参考】

RVM の Gem Sets で gemset の管理 – tbrookの日記

[RVM] Ruby on Rails のバージョンを管理する方法

Ruby のバージョン管理システム RVM で Ruby on Rails のバージョンを管理する方法をご紹介します。

RVM

続きを読む

[Excel] テキストデータ(CSV形式)を貼り付ける方法

Excel に CSV形式のデータを貼り付ける方法を調べたのでメモ。

Excel にテキストデータ(CSV形式)を貼り付ける – まりふのひと はてなブックマーク - Excel にテキストデータ(CSV形式)を貼り付ける - まりふのひと

Excel → CSV はカンタンに出力できるのだけれど、逆の作業は結構めんどうなのですよね。

[Sublime Text 2] インデント(Indent)の設定方法

Sublime Text 2 でインデント(Indent)を設定する方法を調べたのでメモ。

設定は、Sublime Text 2 → Preferences 内の「Settings – Default」の Preferences.sublime-settings を編集するのではなく、「Settings – User」に設定を書いてオーバーライドすることを推奨していました。

// While you can edit this file, it's best to put your changes in
// "User/Preferences.sublime-settings", which overrides the settings in here.
//
// Settings may also be placed in file type specific options files, for
// example, in Packages/Python/Python.sublime-settings for python files.

よって、「Settings – User」でファイルを開いて、下記の内容を追記しました。

tabキーで「半角スペース2つ」に設定しました。

{
    // The number of spaces a tab is considered equal to
    "tab_size": 2,
 
    // Set to true to insert spaces when tab is pressed
    "translate_tabs_to_spaces": true
}

以上です。

[Ruby on Rails] JavaScript や CSS ファイル内で画像を読み込むときのパス(Path)の指定方法

Ruby on Rails にて、JavaScript や CSS ファイル内で画像を読み込むときのパス(Path)の指定方法を調べたのでメモ。

ちなみに、 画像ファイルへのPathはこんな以下のとおりです。

$ tree
.
├── app
│   ├── assets
│   │   ├── images
│   │   │   └── thickbox
│   │   │       ├── loadingAnimation.gif
│   │   │       └── macFFBgHack.png

画像ファイルが、
app/assets/images/thickbox/loadingAnimation.gif
にある場合、Pathは、

/assets/images/thickbox/loadingAnimation.gif

ではなく、images抜きの

/assets/thickbox/loadingAnimation.gif

というように指定しないといけません。

jQuery ライブラリ ThickBox のJavaScript、CSSファイル内で画像ファイルを指定している箇所を参考に変更箇所の例を書いてみました。

・参考:[jQuery] カンタンにDialogを表示できる「ThickBox」の使い方・参考記事まとめ | CodeNote.net はてなブックマーク - [jQuery] カンタンにDialogを表示できる「ThickBox」の使い方・参考記事まとめ | CodeNote.net

■ thickbox-compressed.js

・変更前

var tb_pathToImage = "images/loadingAnimation.gif";

・変更後

var tb_pathToImage = "/assets/thickbox/loadingAnimation.gif";

■ thickbox.css

・変更前

.TB_overlayMacFFBGHack {background: url(macFFBgHack.png) repeat;}

・変更後

.TB_overlayMacFFBGHack {background: url(/assets/thickbox/macFFBgHack.png) repeat;}

以上です。

【参考】

Rails 3.1 and Image Assets – Stack Overflow はてなブックマーク - Rails 3.1 and Image Assets - Stack Overflow

[jQuery] カンタンにDialogを表示できる「ThickBox」の使い方・参考記事まとめ

jQuery の ThickBox を使うときの参考記事をまとめてみました。

基本的には公式サイトを読めばOKです。

・公式(英語):ThickBox 3.1 はてなブックマーク - ThickBox 3.1

英語が苦手な方は日本語の参考サイトを読んで、ざっくり使い方を理解してから公式サイトを読むといいかもしれません。

jQuery版のLightBox「ThickBox」[to-R] はてなブックマーク - jQuery版のLightBox「ThickBox」[to-R]

今更ながらjQueryのプラグインThickBox3.1 – Webtech Walker はてなブックマーク - 今更ながらjQueryのプラグインThickBox3.1 - Webtech Walker

以上です。

[Sublime Text 2] コマンドパレット (Command Pallet) を使う方法

Sublime Text 2 にて、コマンドパレット (Command Pallet) を使う方法を調べたのでメモ。

■ コマンドパレット (Command Pallet) を使う

TextMate と同様、ST2 では Command + Shift + p でコマンドパレットを開くことができます。コマンドパレット上でタイプすると絞りこまれていくので、必要なコマンドを選択して実行できます。

・引用元:Tender Surrender: Sublime Text 2 のススメ はてなブックマーク - Tender Surrender: Sublime Text 2 のススメ

以上です。

Sublime Text 2 入門・設定・カスタマイズなどまとめ

Sublime Text 2 を使うための情報をまとめてみました。(最終更新日:2013/01/29)

ダウンロード&インストール

まず、ここからダウンロードして、さくっとインストールします。

Sublime Text – Download はてなブックマーク - Sublime Text - Download

基本的な使い方

Command + Shift + P でコマンドパレットを使う

[Sublime Text 2] コマンドパレット (Command Pallet) を使う方法 はてなブックマーク - [Sublime Text 2] コマンドパレット (Command Pallet) を使う方法 | CodeNote.net

便利なツールをインストールするために、Package Controlを使えるように設定しましょう。

[Sublime Text] Package Control (パッケージコントロール) の設定方法 はてなブックマーク - [Sublime Text] Package Control (パッケージコントロール) の設定方法 | CodeNote.net

ショートカットコマンド

1ヶ月使って便利だと思った Sublime Text 2 のショートカット 12 選(Win、Mac両方) | クラスメソッド開発ブログ はてなブックマーク - 1ヶ月使って便利だと思った Sublime Text 2 のショートカット 12 選(Win、Mac両方) | クラスメソッド開発ブログ

Sublime Text 2のキーボードショートカット一覧 (Mac OS X) はてなブックマーク - Sublime Text 2のキーボードショートカット一覧 (Mac OS X)

便利なパッケージ

「Sublime Text 2」の便利なパッケージとショートカット | ACTZERO – 株式会社アクトゼロ はてなブックマーク - 「Sublime Text 2」の便利なパッケージとショートカット | ACTZERO - 株式会社アクトゼロ

エラーとかハマったときの解決方法

[Sublime Text] Package Control (パッケージコントロール) の設定方法 | CodeNote.net はてなブックマーク - [Sublime Text] Package Control (パッケージコントロール) の設定方法 | CodeNote.net

その他、参考記事

Sublime Text 2の基礎 (全14回) – ドットインストール はてなブックマーク - Sublime Text 2の基礎 (全14回) - ドットインストール

”恋に落ちるエディタ”「Sublime Text」 完全入門ガイド! | 株式会社LIG はてなブックマーク - ”恋に落ちるエディタ”「Sublime Text」 完全入門ガイド! | 株式会社LIG

コーディングが早くなる!?噂のSublime Text 2を入れて初期設定をしてみた。|WEB Drawer はてなブックマーク - コーディングが早くなる!?噂のSublime Text 2を入れて初期設定をしてみた。|WEB Drawer

テキストエディタ: Sublime Text 2 は事実上の TextMate 2? – QA@IT はてなブックマーク - テキストエディタ: Sublime Text 2 は事実上の TextMate 2? - QA@IT

Tender Surrender: Sublime Text 2 のススメ はてなブックマーク - Tender Surrender: Sublime Text 2 のススメ

Sublime Text 2を使ってみたら思ったより良い ::ハブろぐ はてなブックマーク - Sublime Text 2を使ってみたら思ったより良い ::ハブろぐ

プログラミングエディタ Sublime Text2 を使ってみよう! – mizchi log はてなブックマーク - プログラミングエディタ Sublime Text2 を使ってみよう! - mizchi log

Sublime Text2のインデントに関して – 学んだことをメモする日記 はてなブックマーク - Sublime Text2のインデントに関して - 学んだことをメモする日記

Sublime Text 2 Documentation はてなブックマーク - Sublime Text 2 Documentation

Sublime Text 2 Tips and Tricks (Updated) | Nettuts+ はてなブックマーク - Sublime Text 2 Tips and Tricks (Updated) | Nettuts+

Essential Sublime Text 2 Plugins and Extensions | Nettuts+ はてなブックマーク - Essential Sublime Text 2 Plugins and Extensions | Nettuts+

Sublime Text 2 のユーザ設定 “Settings – User”

Sublime Text 2 のDefault設定ファイルを眺める – blue_ham_cake1024のブログ はてなブックマーク - Sublime Text 2 のDefault設定ファイルを眺める - blue_ham_cake1024のブログ

以上です。(随時更新予定)

[Ruby on Rails] 入力フォームに時刻をフォーマットして初期値をセットする方法

Ruby on Rails 3.2.3 にて、入力フォームに時刻をフォーマットして初期値をセットする方法を調べたのでメモ。

フォームの一部を抜粋。下記のような感じで書く。

# app/views/articles/_article_form.html.haml
  %tr
    %th Published Time
    %td
      = f.text_field :published_at, value: (f.object.published_at.blank? ? '' : f.object.published_at.strftime('%Y/%m/%d %H:%M')

以上です。


参考情報

逆引きRuby – 日付と時刻

Format DateTime in Text Box in Rails – Stack Overflow