ドットインストール代表のライフハックブログ

Content-Length: 241577 | pFad | https://b.hatena.ne.jp/moronbee/20100610#bookmark-21860560
アプリケーションを本番環境に移行すると、ブラウザではエラーの詳細が表示されませんし、ユーザはエラーの発生を教えてくれる訳ではありません。そこでエラーが発生したときには、エラーメッセージの内容を、管理者へ自動的にメールしてくれると助かります。 今回はRailsでエラーメッセージを自動送信する方法についてです。内容はRails本に書いてある通りだけど。 まず、Railsでエラーが発生した場合、必ず呼ばれるメソッドが、 rescue_action_in_public(exception) です。こいつをオーバーライドすることで、エラーメッセージを送信できるようにしてやります。 まず、ApplicationControllerに以下のメソッドを追加します。(app/controllers/application_controller.rb) def rescue_action_in_public(
いつもpublic/404.htmlとか編集してる程度だったので、Railsの仕組みを使ったエラーページを作ろうかと色々試行錯誤してみた. 因にエラーページは通常はProductionモードでHTTPアクセスをローカルホスト( localhost / 127.0.0.1 )以外でアクセスしたときに確認できます. エラーページの実装方法 方法はググってみると、ざっと3種類あった. public/404.htmlを書き換える ApplicationController内でrescue_fromを追記 ApplicationController内でrescue_action_in_publicメソッドをオーバライド 色々やるなら、最後のrescue_action_in_publicオーバライドする方法が一番よさそう. ただ欲を言うとRails自身もProductionモードのときちゃんと、404
Railsで作っててコントローラーで入力チェックをかけたい場合があります。 基本的に、「入力されたパラメータが適切か」ってのはモデルで管理したいです。そうです、MVCの基本です。 ただ入力されたパラメータが存在するかとか、Ajaxでのリクエストしか受け付けたくないとか、モデル以前にコントローラーで制限を加えたい場合ってあると思うのですよ! そんなときの方法をご紹介します。 対象はRails2.3.x です。 通常だとコントローラーのアクションメソッドは以下のような感じになるかと思います。 class TopicsController < ApplicationController def index unless params[:category] flash[:notice] = "カテゴリーを選択してください" redirect_to :controller => "root" ret
● [rails] Action Mailer Eメールサービス層を設計するためのフレームワークです。パスワード忘れのメール、契約時のウェルカムメール、支払い請求メール、といった準備された通知メールを人やシステムに配信することができます。さらにメールの受信処理もできるので、例えば、Eメール経由でweblogを利用したりもできます。 ● generate mailer メールの送受信を行うクラスを作ります。model, controller, scaffoldなどと同様に mailer にも generator がありますので、generate コマンドでクラスを作成することができます。例として、MLの登録用メーラクラス(RegisterMailer)を考えます。 % ruby script/generate mailer RegisterMailer → app/models/regist
Ruby on Rails Guides: Rails Internationalization (I18n) APIを読んでのメモ。全部網羅してたりはしてないので、気になった方は原文見てください。 基本 I18n.translate "store.title" I18n.localize Time.now # 短縮形 I18n.t "store.title" I18n.l Time.now config/locales が translation 用のデフォルトロードパス。 I18n.load_path や config/application.rb 内で config.i18n.load_path をいじれば修正できる。 辞書ファイルにはyaml形式かRubyのhash形式が使える。 デフォルトのlocaleは:en I18n.default_localeでデフォルトのlocaleを変
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く
Fetched URL: https://b.hatena.ne.jp/moronbee/20100610#bookmark-21860560
Alternative Proxies: