kakakakakku blog

Weekly Tech Blog: Keep on Learning!

Ruby

Rails で全角文字を禁止するカスタムバリデータ

フォームで全角文字の入力を禁止したいなーと考えてて,最初は format: { with: } で正規表現を書いてみたんだけど,記号の部分を網羅するのが面倒で微妙だった. ascii_only? ascii_only? (String) - APIdock 判定できそう! pry(main)> 'abc'.ascii_only? …

Singleton Methods と Class Macros

最近「Metaprogramming Ruby 2: Program Like the Ruby Pros (Facets of Ruby)」を読んでて,Part 1. Metaprogramming Ruby まで読み終えることを4月の目標にしてる.洋書で読んでるってこともあって全然進んでないけど頑張る! P114. Introducing Singleton…

ActiveDecorator で関連先のモデルをデコる

Rails で view のロジックを切り出すために ActiveDecorator を使ってる. The Ruby Toolbox で Rails Presenters のランキング見たら ActiveDecorator は全然人気なくて,Draper 最高!な雰囲気を感じる.うむ. Rails Presenters - The Ruby Toolbox ちな…

pry で !!! ってすると強制終了できる

基本的に RubyMine 使ってるので pry 使ってデバッグするってことは少ないけど,さっきループの中で binding.pry しちゃって ( ゚д゚) って顔してた. 調べたら exit-program の alias に !!! が設定されてて,簡単なコマンドで強制終了できた.めでたしめでた…

Ruby で iTune と Google Play のアプリ情報を取得する

iTune のアプリ情報を取得する "itunes-search-api" Gem を使って簡単に取得できる. 取得できる項目が非常に多いので,いろいろと応用できそうな感じ. rlivsey/itunes-search-api bundle install gem 'itunes-search-api' irb で主要な情報を取得してみる …

雑談対話API で遊んでみた

docomo Developer support | NTTドコモ の API を使うといろいろ遊べるらしいので,雑談対話API を使ってみた. API/ツールの概要 | docomo Developer support | NTTドコモ アカウント登録 Facebook と Google+ のアカウントと紐付けられるので,好きな方で…

ドットインストールで「Haml入門」を見た

今のプロダクトでは Haml を中心に使って書いてるので,基本的な書き方は覚えてるけど,ドットインストールのレッスン一覧を眺めてたら「Haml入門」を見つけたので,せっかくなので見てみた.わかりやすくて良かった.ドットインストール,ほんと何でもある…

「Rails3技術者認定ブロンズ試験」に合格した

今日「Rails3技術者認定ブロンズ試験」を受けてきて,合格したのでまとめておく. Railscp | 僕の Rails 歴はまだ半年程度で,Rails3 のプロダクトと,Rails4 のプロダクトを少し保守したことがあるレベル.Ruby 歴は1年程度で「Ruby技術者認定試験 Silver」…

Rubyで指定した文字列長の文字列を生成する

簡単! irb(main):001:0> 'x' * 100 => "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"

RubyMine で RailsServer を起動したりデバッグしたりする方法

そういえば,先週あたりに RubyMine を買ってみた! 多機能で最強IDEとも名高い RubyMine だけど,慣れないと戸惑う部分が多かったりして,まだまだ調べながら使ってるというレベルなので,個人的に困った部分を小さなことでも残して行こうと思う. RubyMine…

Resqueを使ってRailsで非同期処理を実現する

Rails で非同期処理(バックグラウンドジョブ)を実現するライブラリの Resque を使ってみた. 非同期処理のハンドリングを全て Rails で扱えるのが利点で,バックエンドは Redis で動く.さらに sinatra ベースの Resque 管理画面もデフォルトで入ってて,ジ…

kaminari で truncate を定義し忘れると Truncate って表示される

Ruby on Rails で kaminari を使ってページングを実装するときに,ラベルのカスタマイズで truncate キーだけを定義し忘れると,こんな感じで Truncate っていう文字列がモロに出る!あららーっ! ちゃんとドキュメント読みましょうっていう話ですw « 前ペ…

Octokitでプルリクエストの基本情報を取得する

Octokit でプルリクエストの基本情報を取得する Ruby サンプルスクリプトを書いてみた.取得してる項目は,個人的に使えそうなものに限定してるけど,これだけでもいろいろ応用できるんじゃないかな?ちゃんと使うならリポジトリ名やPR番号を引数で指定でき…

Ruby Association Certified Ruby Programmer Silver に合格した

気付いたらもう2013年も終わりだっていうのに,今年はまだ資格を1つも受けてないことに気付いたので,最近 Vagrant+Chef+Capistrano あたりで使い始めた Ruby の認定資格の Ruby技術者認定試験 Silver (Ruby Association Certified Ruby Programmer Silver)…