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総務省が定…

devise_token_authのtoken_validation_responseをオーバーライドする

こんにちは!kossyです! さて、今回はRailsでのトークン認証機能を提供するGem、devise_token_authの token_validatio_responseメソッドをオーバーライドする方法をブログに残してみたいと思います。 方法 devise_token_authのsessions_controller.rbのcrea…

deviseでパスワードが正しいか未定義かを確認する方法とvalid_password?のコードリーディング

こんにちは!kossyです! さて、今回は認証機能を提供するRubyのGemである「devise」を使っている際に、 パスワードが正しいか未定義かを確認する方法と、valid_password?メソッドのコードを読んでみたので、 ブログに残してみたいと思います。 deviseを使っ…

curlでproxyを設定する

こんにちは!kossyです! さて、今回はcurlでproxyを設定したくなるシチュエーションに出会ったので、 ブログに残してみたいと思います。 困った Rails APIモードでAPIサーバーを開発しているときに、リクエスト元のIPアドレスを保存する要件がありました。…

Postmanでリクエスト元のIPアドレスを変更する方法について

こんにちは、kossyです! さて、今回はPostmanでリクエスト元のIPアドレスを変更する方法について、 ブログに残してみたいと思います。 方法 下記の添付画像のように、settingを選択します。 その後、Proxyタブを選択し、 Proxy Serverの入力フォームに、変…

AngularのToken認証ライブラリ「angular-token」のInterceptor周りのソースコードを読んでみた

こんにちは!kossyです! さて、今回はAngularのToken認証ライブラリである、「angular-token」の Interceptor周りのコードを読んで見たので、ブログに残したいと思います。 環境 Angular 11.0.4 npm 6.14.8 node 12.13.1 TypeScript 4.0.5 Interceptorとは…

graphqlクライアントの Altairでトークン認証を行う方法

こんにちは!kossyです! さて、今回はgraphql-ruby + Rails APIモードでdevise_token_authを用いてトークン認証する開発において、 Altairを使ってトークン認証をパスする方法についてブログに残してみたいと思います。 環境 Rails 6.0.3.4 Ruby 2.6.3 MacO…

Rails6からデフォルトで付与されるようになったprecisionとは?

こんにちは!kossyです! さて、今回はRails6系からデフォルトで付与されるようになった、 precisionオプションについて、ブログに残してみたいと思います。 環境 Ruby 2.6.3 Rails 6.0.3 MacOS catalina precisionとは? Railsガイドによると、 precision: …

exifrでExifを自在に操ってみた

こんにちは!kossyです! さて、今回は画像に付記されることがあるExif情報をRubyで操作できるGem、 exifrの使い方について、ブログに残してみたいと思います。 環境 Ruby 2.6.3 exifr 1.3.9 # 使い方 exifrはjpegまたはtiff拡張子の形式の画像に対応してい…

HEYのGemfileが公開されていたので見てみた(その1)

こんにちは!kossyです! さて、今回はRuby on Railsの作者として知られているDHHが開発に参加している、HEYという有料の電子メールサービスの GemfileがGithub上に公開されていたので、どんなGemが使われているかを見てみたいと思います。 connection_pool …

chromeの検証ツールでQiitaの通信を覗き見してみた

こんにちは!kossyです! さて、今回はchromeの検証ツールを使って、 QiitaのXHR通信を覗いて見る方法について、ブログに残してみたいと思います。 環境 MacBookAir chrome検証ツールの開き方 chrome検証ツールは、Macの場合、command + option + i で開くこ…

graphql-rubyのGeneratorsを翻訳してみる

こんにちは!kossyです! さて、今回はgraphql-rubyの公式ドキュメント翻訳第2弾として、 generatorsの翻訳をしてみようかと思います。 偉大なる本家リポジトリはこちら ジェネレーター Ruby on RailsでGraphQLを使用している場合は、ジェネレーターを使用し…

ActiveRecordでpluckの代わりにselectを使ってサブクエリ化する

こんにちは!kossyです! さて、今回はActiveRecordのpluckではなくselectを使ってサブクエリを書いて、 一回のSQL発行でデータを取得する方法について、ブログに残してみたいと思います。 環境 Ruby 2.5.1 Rails 6.0.3.2 MacOS Catalina サブクエリとは 「…

Rspecで配列の値を検証するcontain_exactly

こんにちは!kossyです! さて、今回はRspecで配列の値を検証するcontain_exactlyの使い方を ブログに残してみたいと思います。 環境 Ruby 2.6.3 Rails 6.0.3.2 rspec-rails 4.0.1 使い方 前提として、TenantモデルとUserモデル(自己参照付き)があるとして、…

Angular CLI 11 で ng new してみた

こんにちは!kossyです! さて、今回はAngular11が最近リリースされたとのことで、 早速ng newコマンドを試して、何が変わったのか検証してみたいと思います。 環境 node 12.13.1 npm 6.14.8 Angular 11.0.1 コマンド実行! $ ng new sample ? Do you want t…

Angular 11 へのアップデート時の 'name' is defined as an accessor in class 'CdkColumnDef' エラーの対処法

こんにちは!kossyです! さて、今回はAngular 9のアプリケーションを11にアップデートした際に発生した、 'name' is defined as an accessor in class 'CdkColumnDef' エラーの対処法について、 ブログに残してみたいと思います。 環境 node 12.13.1 npm 6.…

graphql-rubyのGetting Startedを翻訳してみる

こんにちは!kossyです! さて、今回はGraphQLの勉強がてら、graphql-rubyのreadmeを翻訳してみようと思います。(こうでもしないと真面目に読まない気がして、、、) Getting Startedまでの翻訳を頑張ってみます。 偉大なる本家様リポジトリはこちら Getting …

RailsのGem devise のvalidatableのソースコードを読んでみた

こんにちは!kossyです。 さて、今回はRailsプロジェクトにおいて認証機能を作成する時に用いられるGemであるdeviseの、 validatableのソースコードを読んでみたので、ブログに残してみたいと思います。 環境 Ruby 2.6.3 Rails 6.0.3 devise まずはドキュメ…

RailsのRspecでランダムに落ちるテストを再現したい

こんにちは!kossyです! さて、今回はRailsでテストツールにRspecを採用している際に、 ランダムに落ちるテストをseed値を指定することでもう一度再現する方法について、 ブログに残してみたいと思います。 環境 Ruby 2.6.3 Rails 6.0.3 MacOS catalina 設…

Railsのcreated_atがどのようにして自動で保存されているのか調べてみた

こんにちは!kossyです! さて、今回はRailsのcreated_atカラムにどのようにして値が自動で保存されるかについて、 ブログに残してみたいと思います。 環境 Ruby 2.6.3 Rails 6.0.3 MacOS catalina まずはドキュメントを探す 自分のググり方が悪いのか、解説…

Exifとはなんぞや

こんにちは!kossyです! さて、今回は恥ずかしながらExifという用語を初めて耳にしましたので、 備忘録としてブログに残してみたいと思います。 Exifってなんぞや 初耳でしたので調べてみました。以下引用です。 Exifとは、デジタルカメラで撮影した画像デ…

Rubyで例外を起こすためのraiseとfailの違い

こんにちは!kossyです! さて、今回はRubyで例外を起こすためのraiseとfailの違いについて、 ブログに残してみたいと思います。 環境 Ruby 2.6.3 MacOS catalina 両者に違いはない 調べてみましたが、raiseとfailには処理の違いはないようです。Rubyスタイ…

Railsのdependent: :restrict_with_error と :restrict_with_exception はなにが違うのか

こんにちは!kossyです! さて、今回はRailsのdependentオプションに指定できる、 restrict_with_error と restrict_with_exception はなにが違うのかについて、 ブログに残してみたいと思います。 環境 Ruby 2.6.3 Rails 6.0.3 MacOS Catalina そもそもdepe…

Rubyのdigメソッドの便利な使い方

こんにちは!kossyです! さて、今回はRubyのdigメソッドの便利な使い方について、 ブログに残してみたいと思います。 環境 Ruby 2.6.3 MacOS Catalina まずはドキュメント はい、まずはドキュメントを読んでみましょう。Hashクラスに生えているdigメソッド…

RailsのActiveRecordにidsメソッドが生えてた

こんにちは!kossyです! さて、今回はActiveRecordにidsメソッドの使い方について、 ブログに残してみたいと思います。 環境 Ruby 2.6.3 Rails 6.0.3 MacOS Catalina まずはドキュメントを見る なにはともあれまずはAPIドキュメントをみてみます。 Pluck al…