1024tips

WEBエンジニアがLinux,Mac,Rails他のTIPSをまとめます。目指せ1024TIPS!

2009年09月

自分がiPhoneの通信規制対象か確認する方法

ソフトバンクモバイルは12/1から1000万パケット、約1.2GB/月の場合翌月通信規制する旨発表した。では自分が規制対象かどうかどうやって確認すれば良いか?これはプレスリリース内に書かれている。要するに請求書の明細を見ろ、ということのようだ。

http://mb.softbank.jp/mb/information/details/090929.html

通信速度制御の対象か否かの確認方法

オンライン料金案内、または書面での請求書にてご確認いただけます。該当月の請求書の「通信料 パケット」欄の内訳に記載されているパケット数の合計が、各パケット定額サービスごとに上記のパケット数以上の方が対象となる場合があります。

Macのことえりで常に半角数字を入力させる設定

好みの問題だが、個人的には英数字は全て半角で統一したい派。「ことえり環境設定」には「数字を全角で入力」というチェックがあり、これを外せば日本語変換が全角モードでも常に半角数字を入力でき便利である。

305330683048308A74B058838A2D5B9A

ecto3でFlickrプラグインがエラーになる件の解決方法

Macのブログエディタとしては定番と言うecto3を試している。Flickrプラグインが入っていて画像挿入に使えるということで便利だなと思ったのだが"Flickr Failed loading"というエラーになってしまう。

調べた所プラグインをアップデートする必要があるようだ。手順は、下記URLに詳しい。

http://infinite-sushi.com/2009/05/updating-the-flickr-plugins-in-ecto/

ecto3でAmazon Helperがエラーになる件の解決方法

ecto3でFlickr Helperがエラーになる件に引き続き、Amazon Helperもエラーになっている。両方とも標準添付されたHelperなのにエラーのまま放置されているのはどうかと思う。以下、解決方法。

  1. http://infinite-sushi.com/2009/08/updating-the-amazon-plugin-in-ecto/から修正版をダウンロードする。
  2. http://infinite-sushi.com/2009/05/updating-the-flickr-plugins-in-ecto/ の手順に従って修正版を適用する。(左記はFlickrプラグインの修正に関する記事でもある)。

ecto3でブログ投稿するとタイトルが文字化けする場合

ecto3でLivedoor BlogへのAtomPub投稿を試している。投稿するとタイトルだけ文字化けしてしまう。
1024tips » 1024tips - Articles

その場合、「設定」>「ブログ設定」>「送信」で「HTMLエンティティをエンコードする」のチェックを外せば良い。ちなみに、ブログに送信後サーバ側のデータを受信すると文字化けというか逆にHTMLエンティティがエンコードされた状態でダウンロードされてしまうので、確認を「後で行う」にしてダウンロードしなければ良いようだ。サーバ側では、正しくHTMLタグ付きで送信されている。要するにサブジェクトと本文で処理の整合性が取れていないようだ。

30D630ED30B08A2D5B9A

MacにRMagick環境を作る

引き続きSnowLeopardでの開発環境を作っている。Macの場合は結構簡単。


$ sudo port install ImageMagick
$ sudo gem install rmagick

Passengerをdevelpmentモードで動かす

開発マシンをApache+Passengerで動かしていてRailsをdevelopment環境で動かしたい場合、次の記述を行う。


ServerName www.myapp.com
DocumentRoot /home/username/myapp/public
RailsEnv development
Railsレシピブック 183の技Railsレシピブック 183の技
著者:高橋 征義
販売元:ソフトバンククリエイティブ
発売日:2008-05-31
おすすめ度:5.0
クチコミを見る

Ruby on Rails 逆引きクイックリファレンス Rails 2.0対応
Ruby on Rails 逆引きクイックリファレンス Rails 2.0対応
著者:大場 寧子
販売元:毎日コミュニケーションズ
発売日:2008-05-31
おすすめ度:4.0
クチコミを見る

MacPortsでhttpdをインストールする

mongrelではなくapache+PassengerでRails環境を作ることにした。MacPortsでのインストール方法は以下。

apache2.2インストール

$ sudo port install apache2▼自動起動設定
$ sudo launchctl load -w /Library/LaunchDaemons/org.macports.apache2.plist

Passengerインストール

http://www.modrails.com/install.htmlを参考にする。
$ sudo gem install passenger
$ sudo passenger-install-apache2-module

▼httpd.confに以下内容を追加する。ちなみにportsでインストールしたhttpdの設定ファイルは/opt/local/apache2/conf/httpd.confにある。--
Please edit your Apache configuration file, and add these lines: 
LoadModule passenger_module /Library/Ruby/Gems/1.8/gems/passenger-2.2.5/ext/apache2/mod_passenger.so
PassengerRoot /Library/Ruby/Gems/1.8/gems/passenger-2.2.5
PassengerRuby /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/bin/ruby
-- 

▼httpd.confにrailsアプリの設定を追加する。
--
   <VirtualHost *:80>
      ServerName www.yourhost.com
      DocumentRoot /somewhere/public
   # <-- be sure to point to 'public'!
   </VirtualHost>
-- 

RubyGemsのインストールパスを取得する

railsのgemでrequireが失敗するのでインストールパスを調べた。原因は別だったのだが、半年後の自分のためにメモ。

 
$ gem environment
RubyGems Environment:
  - RUBYGEMS VERSION: 1.3.5
  - RUBY VERSION: 1.8.7 (2008-08-11 patchlevel 72) 
[universal-darwin10.0] - INSTALLATION DIRECTORY: /Library/Ruby/Gems/1.8 - RUBY EXECUTABLE: /System/Library/Frameworks/
Ruby.framework/Versions/1.8/usr/bin/ruby - EXECUTABLE DIRECTORY: /usr/bin - RUBYGEMS PLATFORMS: - ruby - universal-darwin-10 - GEM PATHS: - /Library/Ruby/Gems/1.8 - /Users/sakaki/.gem/ruby/1.8 - /System/Library/Frameworks/Ruby.framework/
Versions/1.8/usr/lib/ruby/gems/1.8 - GEM CONFIGURATION: - :update_sources => true - :verbose => true - :benchmark => false - :backtrace => false - :bulk_threshold => 1000 - "install" => "--no-ri --no-rdoc" - :sources => ["http://gems.rubyforge.org/",
"http://gems.github.com/"] - "update" => "--nor --no-rdoc" - REMOTE SOURCES: - http://gems.rubyforge.org/ - http://gems.github.com/

iPhoneが固まった場合に強制リセットする方法

先日待ち合わせの際にiPhoneが固まりまして。フリーズして操作を受け付けない。OS3.1から出る現象。慌ててソフトバンクショップに駆け込んだ所お姉さんに強制リセットという技を教えて貰った。これで急いでいる場合も大丈夫!

iPhoneを強制リセットする方法

ホームボタンと電源ボタンとを15秒長押しする

SnowLeopardにmySQLをインストールする

SnowLeopardでRails開発を行う場合、対応するmySQLバージョンに注意が必要。Mac OS X 10.5(x86_64)をインストールすることと、mysqlのgemを64bitでコンパイルする必要が有る。

http://journal.mycom.co.jp/news/2009/09/01/033/index.html

Rails開発環境、Snow Leopardへアップグレードする方法

MySQLインストール
おかしな挙動を避けるあために64ビット版のMySQLへのアップグレードが強く推奨される。MySQLサーバが動作している場合は停止させ、MySQL 5.1 GA Downloadsから「Mac OS X 10.5 (x86_64)」をダウンロード。ディスクイメージを開いたら、デフォルトのオプションのまま、まず「mysql-5.1.37-osx10.5-x86_64.pkg」をインストール。次に、同じくデフォルトオプションのまま「MySQLStartupItem.pkg」をインストールし、さらに「MySQL.prefPane」をダブルクリック。選択を求められたら既存の設定パネルを置き換える方を選択するようにと説明がある。ここまで作業したらディスクイメージをアンマウントする。

LeopardからSnow Leopardにアップグレードした場合、mysql gemが32ビットモードでコンパイルされているため、再ビルドの必要がある。しかしこの部分は若干状況が複雑だという。Snow Leopardにおいては、Cエクステンションをインストールする場合にはgemはi386 (32ビット)とx86_64 (64ビット)の両方のエクステンションをビルドしようとするものの、mysql.comから提供されているバイナリはユニバーサルではないためこの方法はうまくいかないという。64ビットモードのみをビルドするように次のように強制する必要があると説明されている。

$ sudo env ARCHFLAGS="-arch x86_64" gem install mysql -- --with-mysql-config=/usr/local/mysql/bin/mysql_config 

Railsでメールの日本語化

Rails2.2以降でUTF8のメールを日本語化する方法。
→ActionmailerJaプラグインを使う。以上。

http://github.com/kusakari/actionmailer_ja
ActionmailerJa
==============
インストールするだけで、ActionMailer が日本語対応になるプラグインです。 また、携帯電話用のメールテンプレートの振り分け機能も提供します。 Ruby on Rails 2.0 以降に対応しています
Example
=======
*日本語対応。
インストールするだけで、メールが iso-2022-jp で送信されるようになります。(Softbank の携帯電話への送信は UTF-8 になります。)。
 
  Ruby on Rails 逆引きクイックリファレンス Rails 2.0対応Ruby on Rails 逆引きクイックリファレンス Rails 2.0対応
著者:大場 寧子
販売元:毎日コミュニケーションズ
発売日:2008-05-31
おすすめ度:4.0
クチコミを見る

Railsレシピブック 183の技Railsレシピブック 183の技
著者:高橋 征義
販売元:ソフトバンククリエイティブ
発売日:2008-05-31
おすすめ度:5.0
クチコミを見る

Railsで改行を<br>変換する

Railsでコメントなどの複数行のテキストを改行表示したい場合、以下の方法がある。

simple_format(sanitaize @text )

Railsのセッション有効期限を指定する設定

Railsはデフォルトではブラウザを開いている間セッションを維持する。ブラウザが閉じられるとセッションも無効になる。たいていの場合、これで十分。

しかし業務要件で最後に操作してから10分でセッションを切りたい、という場合は次のように設定する。application_controllerでアクセスがある度に有効期限を10分後に更新していく。


Rails2.0系の場合

自前で書く場合

■controllers/application_controller.rb

# limit sessions to 10min.
ActionController::CgiRequest::DEFAULT_SESSION_OPTIONS.update(
  :session_expires => 10.minute.from_now
)

sliding_sessionsプラグインを使う場合

http://squarewheel.wordpress.com/2007/11/03/session-cookie-expiration-time-in-rails/#comment-29


Rails2.3.2以上の場合

内部構造が変わったため、上記の方法は使えなくなった。session_store.rbに書くだけで自動更新される。
■config/intializers/session_store.rb
ActionController::Base.session = {
  :expire_after => 1.minute
}

■参考:
http://squarewheel.pl/posts/3

If you need to set expiration period for sessions through all controllers in your application, simply add the following option to your config/intializers/session_store.rb file:

:expire_after => 60.minutes

If you need to set different expiration time in different controllers or actions, use the following code in action or some before_filter:

request.session_options = request.session_options.dup
request.session_options[:expire_after] = 5.minutes
request.session_options.freeze

Duplication of the hash is needed only because it is already frozen at that point, even though modification of at least :expire_after is possible and works flawlessly.

 Railsレシピブック183の技
Railsレシピブック183の技

Macの2本指タップを右ボタンクリックにする設定方法

最近は右ボタンとは言わない。左利きの人もいるので「副ボタン」が正しい。Appleの「副ボタンのクリック」は設定インターフェイスがわかりにくく混乱する。トラックパッドの設定を見ると当初より「副ボタンのクリック」という項目にチェックが入っているが、この項目は意味がなくApple自身も「デフォルトでは無効に設定されています」と書いている。正しい設定は「1本指の操作」で「タップでクリック」をチェックすることである。

http://support.apple.com/kb/HT3211?viewlocale=ja_JP
システム環境設定 >  トラックパッド > 「1本指の操作」で「タップでクリック」をチェックする

--以下引用--
副ボタンのクリック
  • デフォルトでは無効に設定されています。
  • 副ボタンのクリックまたは右クリックを使うと、ショートカットメニューのコマンドを表示できます。
副ボタンのクリックを使用するには、「トラックパッド」の環境設定で「タップでクリック」を有効にして、トラックパッドを 2 本の指でタップします。または、「トラックパッド」の環境設定でトラックパッドの左下隅または右下隅に副ボタンクリック領域を設定します。Control キーを押したままクリックすることによって、副ボタンのクリックを行うこともできます。 
▼設定前:最初から「2本指の操作」で「副ボタンのクリック」にチェックが入っているが実際には動作しない。
30C830E930C330AF30D130C330C9 

▼設定後: 「1本指の操作」で「タップでクリック」にチェックを入れると「2本指の操作」で「副ボタンのクリック」の項目が消え「セカンダリータップ」となる。
30C830E930C330AF30D130C330C9 

Apple MacBook Pro 2.26GHz 13.3インチ MB990J/AApple MacBook Pro 2.26GHz 13.3インチ MB990J/A
販売元:アップル
発売日:2009-06-10
おすすめ度:5.0
クチコミを見る
Apple Wireless Mighty Mouse MB111J/AApple Wireless Mighty Mouse MB111J/A
販売元:アップル
発売日:2007-08-09
おすすめ度:3.5
クチコミを見る

Apple MacBook Air SuperDrive MB397G/A
Apple MacBook Air SuperDrive MB397G/A
販売元:アップル
発売日:2008-02-29
おすすめ度:4.0
クチコミを見る

Apple 45W MagSafe 電源アダプタ for MacBook Air MB283J/A
Apple 45W MagSafe 電源アダプタ for MacBook Air MB283J/A
販売元:アップル
発売日:2008-02-29
クチコミを見る
 

asahi.comの「メンテナンスなう」画面の破壊力が凄い件

衝撃のデビューを飾った@asahiアカウントの中の人が女性とわかって一安心なこの頃だが、asahi.comのモバイル版メンテ画面でも「メンテナンスなう」とつぶやくとともにこの待ち受け画面である。Flashの効果としては単純だが、思わずリロードして何回か見てしまった。

http://i.asahi.com/maintenance.html 

onamae.comが10周年記念でドメイン取得10円キャンペーンしている件

GMOの「クマガイコム」によると「お名前.com」の10周年記念で.infoドメインが10円というキャンペーンを本日(9/11)一杯行っている模様。さすがにこれは原価無視で赤字だそう。


http://www.kumagai.com/?eid=508

【お名前.com】 10周年 10円キャンペーン実施中!


お名前.com」は、昨日サービス開始より10周年を迎えました。累積で155万件、現在100万件以上のドメインをご登録頂いております。

お陰様で「お名前.com」は日本のドメイン登録サービスの代名詞になりました。

感謝のしるしとして、「10周年記念10円キャンペーン」を本日11日(金)の18時まで実施しています。

このキャンペーンですが、大出血、大サービスでして、僕らは大赤字です(涙)

この機会に是非ご登録ください。詳細はWebサイトで。




また、ドメインとレンタルサーバーの同時申込みで、ドメインが無料(1年目)、さらにレンタルサーバーの初期費用・月額最大3ヶ月が無料でご利用いただけます。

しかもお申込みいただいたお客様の中から抽選で10名様に最大10年間、レンタルサーバー月額料金を無料でご提供いたします。

SnowLeopard対応のSIMBLがリリースされた

SnowLeopardの64bit化対応したSIMBLがリリースされた。"Choose Application"ダイアログが出る問題が解消されたとのこと。

なおSIMBL本体が64bit対応した、というだけで各SIMBLプラグインはそれぞれ64bit対応したものをインストールし直す必要があることに注意して欲しい。

http://www.culater.net/software/SIMBL/SIMBL.php
v0.9.4 - released 2009-09-08
  • fixed event targeting - no more dialog asking for missing applications 


別冊Mac Fan ビギナーズ大全 2009 (マイコミムック) (MYCOMムック 別冊Mac Fan VOL. 3)別冊Mac Fan ビギナーズ大全 2009 (マイコミムック) (MYCOMムック 別冊Mac Fan VOL. 3)
著者:Mac Fan編集部
販売元:毎日コミュニケーションズ
発売日:2009-07-07
クチコミを見る

Mac Fan (マックファン) 2009年 10月号 [雑誌]
Mac Fan (マックファン) 2009年 10月号 [雑誌]
販売元:毎日コミュニケーションズ
発売日:2009-08-29
クチコミを見る

PostgreSQL8系でto_number関数がエラーになる場合

PostgreSQL8.2では動いていた関数が8.3だと動かなくなることがある。エラーメッセージは下記。
PGError: ERROR: function to_number(character varying, integer) does not exist
となっていてdoes not existということはto_number()が使えなくなったように見えるので焦る。
■原因と解決方法
引数の解釈が厳密になり関数の文字列の引数は’文字列’と明示的に囲う必要がある。postgreSQL8.3のマニュアルに型変換(キャスト)の関数の一覧がある。
http://www.postgresql.jp/document/pg837doc/html/functions-formatting.html

to_number(text, text) 文字列を数値に変換
例)to_number('12,454.8-', '99G999D9S')
  • 正:to_number('0422',’9999’)
  • 誤:to_number('0422',9999)
【改訂第3版】 SQLポケットリファレンス (POCKET REFERENCE)【改訂第3版】 SQLポケットリファレンス (POCKET REFERENCE)
著者:朝井 淳
販売元:技術評論社
発売日:2009-04-29
おすすめ度:5.0
クチコミを見る

達人に学ぶ SQL徹底指南書 (CodeZine BOOKS)
達人に学ぶ SQL徹底指南書 (CodeZine BOOKS)
著者:ミック
販売元:翔泳社
発売日:2008-02-07
おすすめ度:4.5
クチコミを見る
 

NestedAttributes使用時のi18nによるエラーメッセージ日本語化設定

RailsのNestedAttributesを使うと階層化されたモデルを一つのフォームで操作できるようになり便利。NestedAttributes使用時のi18nによるエラーメッセージ日本語化設定についてはまったので自分用メモ。

ポイントはblog.saveした際のメッセージなのでblogの下に「posts_comments_subject」という小文字&アンダーバーでつないだ書式で書くこと。

Blog > Post > Comment.subjectという構造の場合。

ymlの日本語化設定は以下のようになる。
ja-JP:
  attributes:
    blog:
      posts_comments_subject: タイトル
  Railsレシピブック 183の技Railsレシピブック 183の技
著者:高橋 征義
販売元:ソフトバンククリエイティブ
発売日:2008-05-31
おすすめ度:5.0
クチコミを見る

Railsレシピ
Railsレシピ
著者:Chad Fowler
販売元:オライリー・ジャパン
発売日:2006-12-19
おすすめ度:5.0
クチコミを見る

訪問者数
  • 今日:
  • 昨日:
  • 累計: