PIYO - Tech & Life -

Posts

rails-composerとrails newの-mオプション

Railsで使いたいgemが大体定まってくるとrails newでアプリケーションを作ってからの作業が毎回同じことの繰り返しで面倒になってくる。その上、手作業だと設定漏れが出ることも往々にしてあるため、

PostgresSQL+ActiveRecordのwhereで大文字小文字を無視

SQLのlower Model.where("lower(name) like ?", "%john%").to_sql # SELECT \"models\".* FROM \"models\" WHERE (lower(name) like '%john%') SQLのILIKE PosgreSQLではILIKEが使える。 Model.where("name ilike ?", "%john%").to_sql # SELECT \"models\".* FROM \"models\" WHERE (name ilike '%john%') arelを使う t = Model.arel_table Model.where(t[:name].matches("%john%")).to_sql # SELECT \"models\".* FROM \"models\" WHERE (\"models\".\"name\" ILIKE '%john%')" matchesがILIKEを使

大きい1枚のPDFをA4サイズ複数枚に分割して印刷する

あと3週間でワールドカップが開幕する。僕は重度のサッカーファンで試合日程やグループ分けなどがわかるような情報をリビングに印刷して貼りたいと思っている。 そういった用途ではA4サイズの紙では物足りない。お

自サイトへのはてなブックマークを監視する

誰かがブックマークつけてくれたときに2件目にセルフブックマークして新着にでも入ってくんねーかな活動のときに便利な方法を知った。 はてなブックマークにはブックマークを新着順に表示してくれる機能がある。 はて

RailsのRakeタスクが定義される順番

Railsで使うRakeタスクは大きくわけて3種類あり、普通はこの順番で定義されることになっている。 gemのタスク アプリケーション固有のタスク Railsのタスク まずソースコードを読んでみた。 Rakefile # Rakefile require File.expand_path('../config/application',

routes.rbでresourcesを使ったときのパラメータをid以外にする

Railsではhas_manyな関連を持つモデルに対してRESTなルートを簡単に定義できる。 # routes.rb resources :blogs, only: [:index] resources :posts, only: [:index] end このようなルートが定義される。 % rake routes Prefix Verb URI Pattern Controller#Action blog_posts GET /blogs/:blog_id/posts(.:format) posts#index blogs GET /blogs(.:format) blogs#index このときのパラメータであ

Rubyで標準出力を文字列で乗っ取る

この間書いたこの記事のコードがDRYじゃないので少し修正した。 GrapeのAPIのエンドポイントをrake routes的に出力する - ぴよログやりたかったのは記事タイトルの通りで、Grapeで定義したA

Rails x PostgreSQL dbseed用sqlを作る

今日から文体を常体にする。 データベースに最初からデータを入れておきたい場合、Railsではrake db:seedを使う。このタスクによりRailsアプリケーションがロードされた状態でdb/seeds.