リア充爆発日記

You don't even know what ria-ju really is.

2015-01-01から1年間の記事一覧

POSTの結果にiframeを含むと画面が真っ白になる件につきまして

未来のぼくへ。 今度はきっとこのページが見つかると思います。 response.headers['X-XSS-Protection'] = '0' でOK。 Chromium's XSS auditor refused to execute a scriptstackoverflow.com

Railsのroutingで.(ドット)があるとエラーになってしまう場合の回避法

こんなルーティングを定義したとき、 get 'tags/:name', to: 'tags#show', as: :tag /tags/foo. とかでアクセスすると、RoutingErrorになる。 回避するには以下のようにconstraintsでスラッシュ以外を許可するとよい。 get 'tags/:name', to: 'tags#show', a…

dockerなcentos7でhttpdをyumでエラー

dockerでCentOS7ベースのコンテナでhttpdをyumインストールしようとしたら、エラーが出た。 Error unpacking rpm package httpd-2.4.6-31.el7.centos.x86_64 error: unpacking of archive failed on file /usr/sbin/suexec: cpio: cap_set_file Verifying : …

Ansibleでrbenvのplaybookを書いてハマったことなど

あらすじ 新規にAWSでRailsアプリをホストするぞ、となったリア充は、dockerでプロビジョニングのデバッグ環境を作ったものの「プロビジョニングツールはChefでいいのか?」という迷いが常にあった。このタイミングでかねてから耳にしていたfabricとAnsible…

fabricとAnsibleを試してみる

背景 AWS上のCentOS7でRailsが動く環境をCMツールで作りたい 仮想的なAWSのCentOS7はdockerのimageで用意した dockerでAWSマーケットプレイスのCentOS7のイメージっぽいのを作る - リア充爆発日記ria10.hatenablog.com Chefはそれなりに使ったことがある。 …

dockerでAWSマーケットプレイスのCentOS7のイメージっぽいのを作る

背景 AWSを使うぞ! AMIはCentOS7にするぞ! 自分でAMIイメージ作るのはめんどくさいぞ! マーケットプレイスでCentOSからでてる公式イメージあるぞ! プロビジョニングはローカルでやりたいぞ! マーケットプレイスのイメージが乗ったEBSは他のインスタンス…

YosemiteでWifiの様子がおかしいとき

Mac

マジでいらついた。時間とられた。ジョブズが生き(ryググればいろんな解決方法がでてくるけど、どれも機能しなかったが、以下の1をやったら治った。 http://www.reddit.com/r/apple/comments/2jwah7/psa_yosemite_wifi_issues_list_of_possible_fixes/

git-completionでブランチの補完がtoo muchなときの対処法

git

git-completion便利ですよね。でも、それなりに歴史のあるリポジトリで git co [TAB] ※co = checkout ってやると、リモートリポジトリとかタグとか全部出てきてウザい。基本、ローカルのが出てきてくれれば充分なのに。そんなときは__git_refsをいじってやる…

RailsでネストされたリレーションのN+1の解決方法

ranking.article.authorみたいなときの話。N+1はincludesつけて回避するのがふつう。 http://guides.rubyonrails.org/active_record_querying.html#eager-loading-associationsで、タイトルのケースも↑のリンクに書いてあるんだけど、こんな感じに書く。

CircleCIでMySQL5.6を使う方法

追記)コメントで教えてもらったけど、今は設定でubuntuのバージョンが変更でき、そこではMySQL5.6などがプリインストールされるので、もうこの記事読まなくていいです。 Ubuntu 14.04 (Trusty) - CircleCIただ、1つ言いたいのは、「使えるようになったら連…

RailsでCircleCIがMySQL5.6をサポートしていないので苦労した話

かつて日記に書いたんだけど、MySQL5.6から導入されたinnodbのfull text indexは割と便利。 http://d.hatena.ne.jp/ria10/20140107/1389071672が、innodbのfull-text indexを利用した機能があるRailsアプリをCircleCIでテストしようとすると絶対にコケる。 …

rubyでループを1から始める

10.times do |i| p i + 1 end のi + 1が可読性悪いというときの話。 で、 (1..10).each do |i| p i end こんな感じで書ける。 さらに・・・ 1.upto 10 do |i| p i end こっちはrubyっぽいけど、実際コードの中にふっとでてくると、以外に頭に入ってこない(…

RailsのValidationで必要なエラーがだけを出すチョイワザ

こんなバリデーションを入れているとする。 validates :login_id, presence: true, uniqueness: { case_sensitive: false }, length: { in: MIN_LENGTH_LOGIN_ID..MAX_LENGTH_LOGIN_ID }, format: { with: /\A\w+\z/i } これだと、未入力でバリデーションに…

Railsでstructure.sqlがやたらコンフリクトするとき

config.active_record.schema_format = :sqlにしたとき、DBがMySQLだと(そうでない場合もなるかもだけど)db:migrate:resetしたりすると、dumpのタイミングでタイムスタンプがずれるのでこんな感じの残念な差分が生まれる。 /*!40101 SET COLLATION_CONNECT…

RailsでModelをDBから分割・整理する

それなりの規模のRailsプロジェクトではよくFat Model問題とかFat Controller問題が課題になってくる。で、Fat Model問題については、Concernsなどに振る舞いを切り出したり、そもそも「それって1つのテーブルに収める必要ある?」というものを分割するなど…