2021-07-01から1ヶ月間の記事一覧

ActiveRecordのpluckメソッドでjoinsした先のカラムの値を取得したい

こんにちは!kossyです! さて、今回はActiveRecordのpluckメソッドでjoinsした先のカラムの値を取得する方法について、ブログに残してみたいと思います。 環境 Ruby 2.6.8 Rails 6.0.4 MacOS catalina 前提 以下のテーブル構成があるとします。 class Creat…

devise_token_authのregistrations_controllerのcreateアクションのソースコードを追ってみる

こんにちは!kossyです! さて、今回はOSSソースコードリーディング回ということで、devise_token_authのregistrations_controllerのcreateアクションのソースコードを読んでみたので、ブログに残してみたいと思います。 コードリーディング registrations_c…

特定のレコードの前後のレコードを取得する LAGとLEAD関数を試す

こんにちは!kossyです! 今回は、特定のレコードの前後のレコードを取得する LAGとLEAD関数を試してみたので、 備忘録としてブログに残してみたいと思います。 環境 MySQL 8系 LAG・LEAD関数とは? まずはドキュメントを見てみましょう。www.postgresql.jp …

SQLのWITH RECURSIVEの使い方とユースケース

こんにちは!kossyです! 今回はSQLのWITH RECURSIVEの使い方とユースケースを考えてみたので、備忘録としてブログに残してみたいと思います。 環境 PostgreSQL 12系 使い方 公式のドキュメントを見てみましょう。www.postgresql.jp オプションのRECURSIVE修…

Rails APIモードで kaminari を使ってみる

こんにちは!kossyです! さて、今回はRails APIモードでの kaminari の使い方を備忘録としてブログに残してみたいと思います。 環境 Ruby 2.6.8 Rails 6.0.4 MacOS BIgSur kaminari 1.2.1 実装 前提としてjbuilder gem が導入されているものとします。まず…

招待機能を実現するGem「devise_invitable」のソースコードを追ってみる

こんにちは!kossyです! 今回はRailsで認証機能を実装する際の定番Gemである「devise」のextensionで、招待機能を実現するGem「devise_invitable」のソースコードを追ってみたので、ブログに残してみたいと思います。 github.com 環境 Ruby 2.6.6 Rails 6.0…

ファイルアップロードを行うGem 「Shrine」の紹介

こんにちは!kossyです! さて、今回はファイルアップロードを行うGem 「Shrine」の使い方をブログに残してみたいと思います。 環境 Ruby 2.6.6 Rails 6.0.4 shrine 3.4.0 実装 公式のGettingStartedに倣って実装していきます。Getting Started · Shrine ま…

TailwindCSS でタグ表示っぽい要素をつくる

こんにちは!kossyです! 今回はTailwindCSS でタグ表示っぽい要素をつくったので、ブログに残してみたいと思います! 環境 Vue.js 3系 tailwindcss/postcss7-compat@^2.0.3 完成品としてはこんなものを目指します。 実装 まずはコード全晒しです。 <aside class="w-full text-xl text-gray-800 leading-normal"> <div class="pb-8 mt-8"> <p class="tracking-wide leading-7 text-gray-500">注目の</p></div></aside>…

Vue.js 3 + TypeScriptでvue-qrcodeを導入する

こんにちは!kossyです! さて、今回はVue.js 3 + TypeScriptでvue-qrcodeを導入する方法について、ブログに残してみたいと思います。 環境 vue/cli 4.5.9 vue 3.1.2 typescript 3.9.7 vue-qrcode 2.0.0-rc 導入 以下のコマンドを実行します。 $ npm install…

権限管理Gem「Pundit」の権限判定処理を直接呼び出したい

こんにちは!kossyです! 今回は権限管理Gem「Pundit」の権限判定処理を直接呼び出したい時の書き方について、ブログに残してみたいと思います。 環境 Ruby 2.6.6 Rails 6.0.3 MacOS Catalina 実装 通常、PunditはController内でauthorizeメソッドと共に呼び…