はじめに 業務でdevise_invitablegemを使っているプロジェクトがあるが、自分で実装したことはなかったためカスタマイズなしで手順を確認しました。 環境 Rails 7.0.8 ruby 3.2.2 devise 4.9.2 devise_invitable 2.0.8 前提 rails newした後にdeviseをインス…
はじめに 前回名前空間のあるモデルを作成しました。 【Rails】テーブル名にプレフィックスを付与・ネームスペース付きのモデルを作成 - まっきーの学習記録 どうやってスペックを書くのか調べたので、まとめます。 方法 本記事でprojectは名前空間の名前で…
はじめに ある2つのプロジェクトを1つのプロジェクトとして統合して管理したいため、Railsアプリの各ディレクトリ内を以下のようにプロジェクト毎に取り扱いということがありました。 models └ProjectA └User.rb └Admin.rb └... └ProjectB └User.rb └Admin.r…
初めに puma-devを使ってみたので、使い方や躓きを簡単にまとめてみました。 概要 pumaとpuma-devに関してさらっと振り返り。 puma Ruby on RailsのWebアプリケーションに使用されるWebサーバー。 スレッドベースのアーキテクチャを使用し、複数のリクエスト…
初めに 業務でdeviseのメール認証(Confirmable)を使っていますが、自分でメール認証の設定をしたことがないためアウトプットします。 今回はローカルで動かすところまでやってみます。 ローカルのメール確認にはletter_openerを使用。 手順 deviseのインスト…
単純にrails consoleからUser.find(...)的なことをしようとしたら以下のエラーが発生してコンソールが中断してしまうことがありました。 rails c > User.find(...) [__NSCFConstantString initialize] may have been in progress in another thread when for…
deviseモジュール全部みたときに、全部説明しろって言われてたらできないなぁとふと思ったので、とりあえずサラッと確認してみました。 まず導入 rails newは済んでいます。 gem 'devise' $ bundle $ rails generate devise:install $ rails generate devise…
環境構築をしているプロジェクトで、依存関係があるrugged gemが入らないため、解決するまで試したことを書き残していきます。 エラーをちゃんと読む $ bundle install ...(省略) Installing rugged 1.6.3 with native extensions Gem::Ext::BuildError: ERR…
rails new して色々試すときにあれ?いつも何やるっけってことをなくすために、rails newのときによくすることを備忘録として残しました。 rails new データベース: postgresql JavaScriptライブラリー: esbuild CSSプロセッサ: bootstrap rails new sandbox…
よっしゃ実装完成したー!コミットしよー。って短絡的にコミットやプッシュをしたことありませんか? 人間はミスが多い生き物ですし、自分は特にミスをするタイプです。 そんな人間は実装した後に、きちんと動作確認するべきですが、動作確認すらも簡単にし…
困ったこと すでに開発されているプロジェクトで.deliver_laterを使ってメールを送信している箇所がletter_openerでプレビューされなかった。 deviseを使った招待メールはプレビューで確認できているのに。。 結論 ローカル環境でジョブの実行がされていなか…
そもそもターミナルのプロンプトって? 「プロンプト」はターミナルの中でuser_name@host_name ~ %で表示される、ユーザーにコマンドを入力するための待ち受け状態を示すテキストのこと。 なぜ差分(diff)を表示させたいのか 開発をしていると知らず知らずの…
はじめに 配列内の要素が特定の条件を満たすかどうかを判定する必要がある場面があると思います。そんな時に便利なのが、Rubyの all? メソッドです。このメソッドは、配列内のすべての要素が指定した条件を満たすかどうかを一度に判定してくれます。この記事…