きゃまなかのブログ

新卒6年目の WEB エンジニアです。 Ruby on Rails の TIPS を中心にブログ書いてます。 去年まで運用・保守のエンジニアだったので、サーバサイドの記事もたまに書きます。 よろしくお願いします。

【Ruby on Rails】画像は public と app/assets/images のどちらに設置すべき?

概要 画像を読み込む際のパスが違う アセットパイプラインについて CSS で使えるプロパティが違う まとめ 概要 Rails ではアプリケーション内で使用される画像の設置場所に、現在 2つの場所が存在します 。 public ディレクトリ app/assets/images ディレク…

【AWS】サーバ間でファイルのリアルタイム同期を行う【rsync + xinetd + lsyncd】

概要 はじめに rsync とは? xinetd とは? lsyncd とは? パッケージのインストール 対応方法 rsync の設定 ポート解放 rsync の起動 xinetd の設定 xinetd の起動 rsync の動作確認 lsyncd の設定 lsyncd の起動 lsyncd の動作確認 ファイルの作成 ファイ…

【Ruby on Rails】deleted_at を使って論理削除をしよう

概要 はじめに 導入方法 gem の紹介 ApplicationRecord に設定追加 カラムの追加 動作確認 まとめ 概要 Rails には DB のカラム名に『created_at』『updated_at』と言う、設定しておくだけで、作成日時と更新日時を自動記録してくれる、お決まりの便利な機能…

SSL 証明書をどうやって管理する?

概要 SSL 証明書の購入 管理方法 暗号化 復号化 プライベートレポジトリの利用 まとめ 概要 SSL 証明書を購入した時の話です。 購入した SSL 証明書をどうやって管理しようか悩んだことがあります。 開発に関するものは全て GitHub で一元管理しているので、…

【Ruby on Rails】require と permit の使い方がよく分からない

概要 はじめに params の中身を確認 params.require の中身を確認 params.require.permit の中身を確認 おまけ 配列のパラメータを受け取りたい場合 まとめ 概要 Rails 4 からストロングパラメータと言う新機能が導入されました。 具体的には require と per…

【AWS】.ssh/config を利用して、ログイン時のコマンドを省略する

概要 .ssh/config とは インスタンスに SSH する前に... ユーザ名の確認 鍵 PATH の確認 ログイン方法 SSHコマンドでログイン .ssh/config を利用してログイン まとめ 概要 インスタンスに毎回ログインする際、ユーザ名と鍵 PATH を記載するのが面倒くさいの…

【Ruby on Rails】ルーティング member と collection の違い

概要 member の使い方 collection の使い方 まとめ 概要 Rails には index, show, new, edit, create, update, destroy の 7 つのデフォルトアクションが用意されています。 もし、これ以外のアクションを新しく追加したい場合、ルーティングに設定を追記す…

【Ruby on Rails】ルーティング scope と namespace の違い

概要 namespace の使い方 scope の使い方 まとめ 概要 Rails で API を作成するときに、URL 設計を気にすると思います。 例えは、ユーザ情報を操作する users API のエンドポイントを下記のようなパスで作成したいとします。 http://$(DNS)/api/v1/users こ…

【AWS】Ruby on Rails + Nginx + Unicorn + MySQL 環境構築

概要 はじめに 環境構築 タイムゾーンの設定 ロケールの設定 標準ライブラリ インストール Git インストール MySQL インストール Nginx インストール Ruby インストール Bundler インストール Rails インストール Rails アプリ作成 Gemfile を修正 Nginx の…

【Ruby on Rails】緯度経度から 2 点間の距離を算出する

概要 計算式 プログラムを作成 算出結果の確認 まとめ 最後に 概要 最近では企業が多くの API を公開しており、それらを利用して簡単にアプリケーションを作成できるようになりました。 その中には、店舗情報を扱う API も数多く存在します。 店舗情報を扱う…

【Ruby on Rails】 gem を使わないで環境毎に定数管理をする

概要 はじめに yaml を利用した定数管理用法 config/constants.yml config/initializers/00_load_config.rb 動作確認 まとめ 概要 Ruby on Rails には定数管理用の gem がたくさん存在しています。 有名な gem だと以下の名前が上がるかと思います。 github.…