開発環境にdockerを使っている場合のrails-erdのセッティング

こんにちは!kossyです! さて、今回は開発環境にdockerを使っている場合のrails-erdのセッティング方法について、 ブログに残してみたいと思います。 環境 Ruby 2.6.6 Rails 6.0.3.5 rails-erd 1.6.1 ruby-graphviz docker desktop 2.3.6 docker-compose 1.…

Rails6のHostのホワイトリスト機能の使い方

こんにちは!kossyです! さて、今回はRails6のHostのホワイトリスト機能の使い方について、ブログに残してみたいと思います。 環境 Ruby 2.6.6 Rails 6.0.3.5 Docker for Mac Hostのホワイトリスト機能とは? Hostのホワイトリスト機能が入ったPRgithub.com…

アップロードされたファイルのMime-TypeをチェックできるGem 「marcel」の使い方

こんにちは!kossyです! さて、今回はアップロードされたファイルの中身をチェックできるGem 「marcel」の使い方について、 ブログに残してみたいと思います。 GitHub - basecamp/marcel: Find the mime type of files, examining file, filename and decla…

railsでメソッドの定義場所をコンソールから確認してみた

こんにちは!kossyです! さて、今回はRailsでメソッドの定義場所を調べる方法について、ブログに残してみたいと思います。 環境 Ruby 2.6.6 Rails 5.2.4 Docker for mac ActionView::Base#renderの定義場所を調べる 諸事情あってActionView::Base#renderの…

RailsでCOALESCEを使って勤続年数を出してみた

こんにちは!kossyです! さて、今回はRailsでCOALESCEを使って勤続年数を出してみたので、ブログに残してみたいと思います。 環境 Rails 6.0.3.4 Ruby 2.6.6 PostgreSQL 12 Docker For Mac 前提 以前書いた拙著のテーブル構成を例にとります。kossy-web-eng…

RailsでSQL直書きでCASE文を書いてみる

こんにちは!kossyです! さて、今回はRailsでSQL直書きでCASE文を書いてみたので、ブログに残してみたいと思います。 環境 Rails 6.0.3.4 Ruby 2.6.6 PostgeSQL 12 Docker For Mac 前提 以前書いた拙著のテーブル構成を例にとります。kossy-web-engineer.ha…

graphql-batchでloadするデータにthenメソッドで処理を加える

こんにちは!kossyです! さて、今回はgraphql-batchのthenメソッドを使って、loadしたobjectに処理を加える方法について、 ブログに残してみたいと思います。 環境 Ruby 2.6.3 Rails 6.0.3.4 graphql 1.11.6 graphql-batch 0.4.3 方法 post has_many commen…

graphql-rubyでmethodオプションを使って、modelに定義したメソッドをfieldにする方法

こんにちは!kossyです! さて、今回はgraphql-rubyでmethodオプションを使ってmodelに定義したメソッドをfieldにする方法について、ブログに残してみたいと思います。 環境 Ruby 2.6.3 Rails 6.0.3.4 graphql 1.11.6 方法 Userモデルがあるとして、以下のメ…

graphql-rubyでinterfaceを定義してみる

こんにちは!kossyです! さて、今回はgraphql-rubyでinterfaceを定義する方法について、ブログに残してみたいと思います。 環境 Ruby 2.6.3 Rails 6.0.3.4 graphql 1.11.6 created_atとupdated_atをinterface化する ジェネレータを使ってGraphQLのセットア…

graphql-rubyでモデルのカラムの値を加工して返したい

こんにちは!kossyです! さて、今回はgraphql-rubyでカラムの値をよしなに加工して返す方法について、ブログに残してみたいと思います。 環境 Ruby 2.6.3 Rails 6.0.3.4 graphql 1.11.6 graphql-batch 0.4.3 Typeファイル内にfield名と同じ名前の変数を定義…

RailsでPostgreSQLのrank関数を叩いて、ランキングをつけてみた

こんにちは!kossyです! さて、今回はRailsでpostgreSQLのrank関数SQLを直叩きしてランキングをつける方法について、 ブログに残してみたいと思います。 環境 Rails 6.0.3.4 Ruby 2.6.6 MacOS Catalina 事前準備 例として社員の売り上げを管理するようなテ…

Cannot create the snapshot because a snapshot with the identifier db_name already exists. と言われたとき

こんにちは!kossyです! さて、今回は、Cannot create the snapshot because a snapshot with the identifier db_name already exists. エラーに遭遇したので、 備忘録としてブログに残してみたいと思います。 スナップショット名の識別子が既に存在してい…

Auth0のログイン機能で取得したaccess_tokenを使ってRails側で認証を通してみた

こんにちは!kossyです! さて、今回はAuth0のログイン機能で取得したaccess_tokenを使ってRails側で認証を通してみたので、 備忘録としてブログに残してみたいと思います。 環境 Rails Ruby 2.6.3 Rails 6.0.3.4 Docker-Desktop Vue @vue/cli 4.5.9 vue@3.0…

Vue.jsのAuth0の認証チュートリアルを Vue.js 3 + TypeScriptで書き直してみた

こんにちは!kossyです! さて、今回はVue.jsのAuth0の認証チュートリアルを Vue.js 3 + TypeScriptで書き直してみたので、 備忘録としてブログに残してみたいと思います。 環境 vue/cli 4.5.9 vue 3.0.4 node 14.15.0 npm 6.14.8 Vue.jsのボイラープレート…

RspecでRuntimeError: Circular dependency detected while autoloading constant が出た場合の対処法

こんにちは!kossyです! さて、今回はRspecでテストを実行する際に、RuntimeError: Circular dependency detected while autoloading constantが出た場合の対処法をブログに残してみたいと思います。 環境 Ruby 2.6.5 Rails 5.1.7 Docker for Desktop 原因 …

Vue.jsで環境変数を扱う時はVUE_APPを接頭辞に付与するのを忘れないようにしよう

こんにちは!kossyです! さて、今回はVue.jsで環境変数を扱う時に、VUE_APPを付与し忘れて10分ほどハマってしまったので、 備忘録としてブログに残してみたいと思います。 環境 vue/cli 4.5.9 vue 3.0.4 node 14.15.0 npm 6.14.8 事象 .envファイルに以下の…

Railsのvalidationで値が空であることを検証する absence: true

こんにちは!kossyです! さて、今回はRailsのvalidationで値が空であることを検証する absence: trueの使い方について、 ブログに残してみたいと思います。 環境 Ruby 2.6.6 Rails 6.0.3.4 MacOS catalina まずはドキュメントを読んで使い方を把握しよう 2.…

Railsでvalidationを行う際のwith_optionsの使い方

こんにちは!kossyです! さて、今回はRailsでvalidationを行う際のwith_optionsの使い方について、ブログに残してみたいと思います! 環境 Ruby 2.6.6 Rails 6.0.3.4 MacOS catalina Documentを読んで使い方を学ぶ まずはドキュメントを読んでみましょう。 …

Vue.js 3 系で globalProperties を使ってグローバルなプロパティを定義する

こんにちは!kossyです! さて、今回はVue.js 3 系で globalProperties を使ってグローバルな値をプロパティを定義する方法について、 ブログに残してみたいと思います。 環境 vue/cli 4.5.9 vue 3.0.4 node 14.15.0 npm 6.14.8 方法 Vue.js 3系では、従来の…

Vue.js でPropTypeを使ってpropsに型を当てる

こんにちは!kossyです! さて、今回はVue.js 3系で子コンポーネントに渡ってきたpropsに PropTypeを使って型を付与する方法についてブログに残してみたいと思います。 環境 vue/cli 4.5.9 vue 3.0.4 node 14.15.0 npm 6.14.8 実装例 <script lang="ts"> import { defineCompon…

VueRouterのuseRoute()とuseRouter()の違い

こんにちは!kossyです! さて、今回はVueRouterのuseRouteとuseRouterの違いについて、 ブログに残してみたいと思います。 環境 @vue/cli 4.5.9 vue @3.0.4 npm 6.14.8 node 14.15.0 useRoute()は現在のルートを表す useRoute()およびuseRouter()の定義元を…

VueRouterのナビゲーションガードのto, from, nextに型を当てる

こんにちは!kossyです! さて、今回はVueRouterでナビゲーションガードを実装するときのto, form, nextに型を当てる方法について、 ブログに残してみたいと思います。 環境 @vue/cli 4.5.9 vue 3.0.5 node 14.15.0 npm 6.14.8 状況 以下のようなrouter/inde…

npm-check-updatesを使ってサクッとライブラリをアップデートする

こんにちは!kossyです! さて、今回はnpm-check-updatesを使ってサクッとライブラリをアップデートする方法について、 ブログに残してみたいと思います。 環境 node 12.13.1 npm 6.14.8 npm-check-updates 10.2.5 Documentを見る 何はともあれ公式Docmentを…

Ansible2.9の環境構築をしてみた

こんにちは!kossyです! さて、今回はAnsible2.9の環境構築をしてみたので、その手順をブログに残してみたいと思います。 環境 MacOS catalina python2系 Ansible2.9 手順 まずはお手元の環境にAnsibleがinstallされているかどうかを確認 $ ansible --versi…

AWS CLI の aws configure コマンドで設定したcredentials情報が反映されない問題

こんにちは!kossyです! さて、今回はAWS CLI の aws configure コマンドで設定したcredentials情報が反映されない問題に遭遇したので、 解決した方法をブログに残してみたいと思います。 環境 aws-cli/2.1.15 Python/3.9.1 Darwin/19.6.0 事象 以下のコマ…

ActionController::Parametersのマイナーなメソッドを紹介

こんにちは!kossyです! さて、今回はActionController::Parametersのマイナーなメソッドを ブログで紹介できればと思います。 環境 Ruby 2.6.3 Rails 6.1.0 MacOS Catalina 公式Documentはこちら fetch params.fetch(key, *args)のように呼び出します。 $ …

Terraform環境構築時の「Version could not be resolved」エラーの解消方法

こんにちは!kossyです! さて、今回はTerraform環境構築時にハマったエラーの解消方法について、 ブログに残してみたいと思います。 環境 Homebrew 2.6.2 tfenv 2.0.0 terraform 0.12.28 tfenvのインストール まずはTerraformのバージョン管理ツールであるt…

Railsで様々なrequest.user_agentを取得したい

こんにちは!kossyです! さて、今回はRailsで開発中にMacOS以外の様々なユーザーエージェントを試す方法について、 ブログに残してみたいと思います。 環境 Ruby 2.6.3 Rails 6.0.3.4 MacOS Catalina Chrome 87 検証ツールを使う chromeの検証ツールは、右…

devise_token_authのset_user_by_tokenの中身を見てみた

こんにちは!kossyです! さて、今回はdevise_token_authのset_user_by_tokenメソッドのコードリーディングをしてみたので、 ブログに残してみたいと思います。 偉大なる本家リポジトリはこちら devise_token_authのset_user_by_tokenメソッドはとても長い …

産業分類コード一覧(小分類)をCSVファイルにしました

こんにちは!kossyです! さて、今回は日本標準産業分類の小分類のコードと名称を CSVファイルにしましたので、ブログに残してみたいと思います。 日本標準産業分類とは? https://www.soumu.go.jp/toukei_toukatsu/index/seido/sangyo/index.html総務省が定…