• 更新日: 2017年3月16日
  • Ruby

Ruby で通常の gem を作る方法です。Bundler を使った Ruby Gem の作り方を解説します。Bundler を使うので、入ってなければ前もってインストールしておきます。

bundler のインストール。

— 環境 —
bundler 1.14.4
rake 12.0.0

続きを読む

  • 更新日: 2017年3月14日
    公開日: 2017年3月10日
  • 日記

最近自分が料理をする機会が増えてきて、あと奥さんからの要望もありまして、キッチンでレシピサイトをもっと楽に調べたり、レシピを見ながら料理を作るのが楽になるように工夫してみた記録です。台所すぐ横の壁にタブレット用の壁掛けホルダーを自作で設置して、そこに常時 Amazon Fire タブレットを置いて、キッチンでいつでもサクッとレシピサイトを見れるようにしました。

Photo 30-01-2017, 15 43 58

かかった費用200円。

続きを読む

  • 更新日: 2017年2月21日
  • Ruby

ローカルにある開発中の gem を、ローカルの Ruby や Rails のプロジェクト等にインストールして使う方法です。プロジェクトの Gemfile 中に path オプションを指定してやると良い。

Gemfile でローカル gem のパスを指定

以下のように Gemfile 中で、path オプションにローカル gem のパスを指定します。

Gemfile

そして bundle install。

確認。

続きを読む

  • 更新日: 2017年2月8日
  • Rails

Rails で AMP(Accelerated Mobile Pages) に対応するための、Rails プラグイン gem を作成して公開しました。設定や使い方は、GitHub の README に詳しく書いています。サポート対象の Rails バージョンは、4.1, 4.2, 5.0 です。

rails_amp | RubyGems.org | your community gem host
takafumir/rails_amp: RailsAmp is a Ruby on Rails plugin for AMP(Accelerated Mobile Pages).

AMP についての詳細、ドキュメント等は以下。

Accelerated Mobile Pages Project

続きを読む

  • 更新日: 2017年2月3日
  • Rails

Rails で request.url と request.original_url の違いが気になって、ActionDispatch ソースコードを少し読んでみました。結果としては、両者には実装方法に違いがあるのが分かった。

ビューに…

と書くなどして確認すると分かりますが、request は ActionDispatch::Request クラスのオブジェクトです。

— 環境 —
Rails 5

request.url

request.url は ActionDispatch::Http::URL モジュール(action_dispatch/http/url.rb)で実装されています。

rails/url.rb at master – rails/rails

この ActionDispatch::Http::URL モジュールは、ActionDispatch::Request クラスで include されています。

続きを読む

JavaScript を書いていて HTML のコメント要素を取得したいケースに遭遇しました。HTML のコメント要素とは…

のような HTML 中のコメントタグ要素のこと。これまで JavaScript でコメントタグを取得したいという機会がなく、知らなかったので調べました。特定要素配下のノード一覧を取得した後に、nodeType を 8(COMMENT_NODE)と指定して抽出することで、取得したノード一覧のうちコメントのノードのみを取得することができます。

続きを読む

Rails アプリケーションを動かしている Nginx サーバーの production 環境で、502 エラーが発生したので原因を探りました。

Nginx のエラーログを確認

まずは、Nginx のエラーログを確認しました。

上記のように、

というエラーメッセージが沢山記録されていた。訳しますと…

「upstream からレスポンスヘッダーを読み出す際に、upstream が大きすぎるヘッダーを送信しています」とのことで、クッキーのデータが大きすぎたのが原因っぽい。

続きを読む

WordPress で運営しているブログを Twitter Bootstrap を用いて、レスポンシブデザインに対応する Tips です。Bootstrap を用いると、比較的簡単に WordPress をモバイル対応のレスポンシブデザインにできます。

Bootstrap The world’s most popular mobile-first and responsive front-end framework.

— 環境 —
WordPress 4
Twitter Bootstrap 3.3.7

Twitter Bootstrap ダウンロードと設置

Twitter Bootstrap をダウンロードして、以下に設置します。

WordPress テーマを git 管理していれば、lib フォルダを .gitignore に追加。

.gitignore

続きを読む

  • 更新日: 2016年12月6日
  • Rails

whenever は、cron ジョブを Ruby のシンタックスで簡潔に書くことができる gem です。whenever を利用すれば、定期的に cron で実行したいバッチ処理等を作成しやすく、また管理しやすくなります。使い方も簡単です。

https://github.com/javan/whenever

この記事は、Rails プロジェクトでの whenever 導入から、cron ジョブの作成・実行までの流れの説明となります。

— 環境 —
rails 5.0.0.1
whenever 0.9.7
capistrano 3.6.1

続きを読む

  • 更新日: 2016年11月24日
  • Rails

Rails 5(Turbolinks 5)の環境で、グーグルのアクセス解析サービス Google Analytics を使うための対応策です。Google Analytics の解析用トラッキングコードは JavaScript のコードで提供されるのですが、Rails で Turbolinks を有効にした場合、$(document).ready() や $(window).load() が発動せず、JavaScript が動作しないという問題に遭遇することがあります。

そのための対策として、Turbolinks 5より前のバージョンでは、Turbolinks が提供する page:load 等のイベントを利用していました。Turbolinks 5 では、これに代わり turbolinks:load 等のイベントを利用します。

— 環境 —
rails 5.0.0.1
turbolinks 5.0.1

続きを読む