Ruby on Rails 末尾の半角スペースで困惑:ActiveModelとMySQLの連携問題 概要 ActiveModelのuniqueがあるアトリビュートの末尾に半角スペースがあると挙動がおかしくなるケースがありました。 問題 以下のようにcodeがユニークなアトリビュートを定義してあるとします。 class Product < ... 2023.04.14 Ruby on Rails
Ruby on Rails Rail7の推奨になったimportmap+ dartsassを使ってサービスを構築してみました 概要 Ruby on Rails Advent Calendar 2022の17日目の記事です。 Ruby on Rails 7.0からアセット管理にimport mapsが使われるようになりました。Rails6のときに使われていたwebp... 2022.12.14 Ruby on Rails
Ruby on Rails Rails7 + importmap + dartsass-rails 概要 Rails7のデフォルトでのアセットの管理がどの様になっているか知りたかったので rails newをしてみました。 既存プロジェクトを移行したときの差分はこちらです。 既存のソースコードの流用などがあるので変更を最小限にしたかったと... 2022.10.16 Ruby on Rails
Ruby on Rails webpackerを削除してcssbundling-rails+jsbundling-rails+propshaftに移行 概要 importmap-railsに移行したかったのですが、手元のブラウザではちゃんと動かなかったので諦めてJavascriptはtranspileすることにしました。 webpackerから移行した際の手順をまとめておきます。 こちらの... 2022.10.09 Ruby on Rails
Ruby on Rails RailsのアクターがN:Mのシステムを作るときの権限モデル 背景 手元で作っているRailsのサービスの要求が肥大化してきたので、権限モデルをちょっと整理してみました。 権限が複雑になる原因は、メトリックが多くなること。要件レベルでどれだけメトリックを減らせるかが重要。 ビジネスで利用するサービスの... 2022.10.08 Ruby on Rails
Ruby on Rails FakerやGimeiのseedをrspecのseedと一致させる 概要 rspecにおいて、単体テストの順番や使うデータをランダム化してテストパターンを増やすために config.order = :randomを有効化するのは普通かと思います。テストが失敗したときに、rspecコマンドの--seedオプシ... 2022.06.02 Ruby on Rails
Ruby on Rails Railsでsessionを無効化する方法 config/initializers/session_store.rbにRails.application.config.session_store :disabledを書き込んでアプリケーションサーバを再起動。 echo "Rails.... 2022.05.28 Ruby on Rails
Ruby on Rails Rails 6.1.5でdb:migrationのときにreference周りでエラー 問題 rails db:migrateをしたときに、以下のようなエラーが出るようになってしまった。 親のキーがbigntで作られていないから、外部キーが貼れないというエラー。 Column `parent_id` on table `chi... 2022.05.19 Ruby on Rails
Ruby on Rails RSA Encryption not supported – caching_sha2_password plugin was built with GnuTLS support がでたときの対処法 原因 MySQL5.7までの認証プラグインにはmysql_native_passwordがデフォルトで使用されていましたがMySQL8より新たに追加されたcacing_sha2_passwordがデフォルトに変更されましたがクライアント側が... 2021.12.18 Ruby on Rails
Ruby on Rails Rails + MySQL 8でngramを用いたfulltext index Railsのmigrationで普通にfulltext indexを付ける場合には以下のようにすると思いますが、普通のfulltext indexではngramが使われないので日本語の全文検索をする場合には全然マッチしません。 class ... 2021.10.19 Ruby on Rails