ume

2024-04-01から1ヶ月間の記事一覧

rails7 メンターさんのコードレビューを通して指摘していただいたこと

前書き 今railsでrake taskを新規作成しています. そこでrails promotion_code:generateというコマンドを実行するとPromotionテーブルに10個のレコードを作成したい。1つのレコードには2つのカラム(promotion_codeとprice)があり、それぞれ8桁の英数字と数…

rails7 本番環境ActiveRecord::InvalidForeignKey エラー 

前書き 開発環境では動くけど本番環境では動かなくエラーにハマったので記事に残します 環境 Rails 7.0.8.1 Ruby 3.2.1 Docker version 24.0.7 結論 dependent: :destoroyオプションをつける dependent: :destoroyオプションとは? ⇨親テーブルのレコードを…

rails7 開発環境でメールを送信機能実装

やりたいこと ECサイトで商品購入した際に購入商品の明細をメールで送りたい. 注意点: 今回はactive mailerの設定とどのようなメールが届くのかというのを開発環境で見ていこうと思います。実際のメールに届くわけではありません。 完成像 全体像 ①メーラー…

rails7 メンターさんにコードレビューしてもらったフィードバック

前書き これは記事というより個人的な忘却録として残します。 指摘箇所 ⇨find_or_create_by()メソッドを使おう モデル.find_or_create_by(引数). ⇨引数の条件でモデルからレコードを探しあれば戻り値として返すが、見つからない場合は(引数)をモデルに新規作…

本番環境でデータベースリセットしマイグレーションファイルの適用と初期データ挿入

前書き 本番環境でデータベースをリセットし再びマイグレーションファイルを適用させたいのですがはまったので記事に残します 環境 rails7 ruby 3.0.8 heroku postgresSQL 結論 heroku pg:reset -a <アプリ名> heroku run rails db:migrate heroku run rails…

rails7 from_withのオプションの違い(model:オプションとurl:オプション)

結論 フォームのデータをコントローラーでparams[:モデル名][:キー]でデータを受け取るかparams[:キー]で受け取るかの違い modelオプション ⇨params[:モデル名][:キー]でデータを受け取る urlオプション ⇨params[:キー]でデータを受け取る modelオプション …

Rails7メンターさんにしていただいたこと(Active StorageのN+1問題)

前書き 現在ECサイトを作成しています。 以下のコードで上記の表示をしています. index.html(↓わかりやすいように余計なdivタグなど省略). products_controller.rb class ProductsController < ApplicationController def index @products = Product.all #pr…