You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert
最初のコラムでは、Rubyの構文は柔軟であり、ドメイン固有言語(DSL)を作るのに非常に適していると述べた。 さて、これからはRubyのメソッドの定義方法と呼び出し方法について詳しく述べる。さらに、Rubyのメタプログラミングによって、DSLにコードの実行中に新しいクラスを作成させる方法について説明する。これを読めば、DSLの作成に必要なツールの大半を知ることができる。 われわれは既に、Rubyではあるクラスにnewメソッドを送ることでオブジェクトが生成されることを学んでいる。 book = Book.new クラスがnewメソッドを受け取ると、新しいオブジェクトのスペースに割り当て、もしinitializeインスタンスメソッドが存在すればそれを呼び出し、新しいオブジェクトを有効な状態にする。newメソッドに渡される引数は、自動的にinitializeに渡される。例えば次のようになる。 c
何が問題か RubyOnRalsには、ライブラリとして便利な機能がデフォルトで提供されている。「error_messages_for」もその1つ。これは、ユーザーがフォームからデータを送信してきた時、内容にもれがあったり、値が不正であることをメッセージとして出力するもの。 しかし、デフォルトは英語表記。しかも、カラム名を使用してしまうのであまりよくない。そこで、これを日本語化する。 解決策 主に3つあると思う。 1.「ActiveHeart」を使う(非推奨) 2.「ruby-gettext」を使う 3. 自分で変更 ActiveHeartは、作成者が非推奨していた。何らかの脆弱性なのかな。ググれば出ると思う。このライブラリの中に日本語化をサポートするものがある。 ruby-gettextも日本語化をサポートするが、こちらは日本語化だけでなく、様々な言語にアプリケーションを対応させることがで
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く