2020-01-01から1年間の記事一覧
最近ハマってしまったのでメモとして残しておく。 TL;DR 自身のmodel と association を同時に save する場合は dirty attribute が上書きされる可能性があるので注意する必要がある。 本編 雑なサンプルを提示する。 User : ユーザー作成時に新規ユーザー向…
sorbet は少し前に話題になっていた Ruby の type annotaion gem。 sorbet.org 以下のようなコードを書くと静的型チェック、動的型チェックの両方をやってくれる。 # typed: true require 'sorbet-runtime' class A extend T::Sig sig {params(x: Integer).r…
rubygems.org TL;DR 会社で grpc ruby を使っていて、同じような実装何回もやってんなと思ったので共通化して gem にした request message を required チェックを簡単にできる DSL を提供してくれる いつも書いていた required をチェックするだけの冗長な…
結論 Concern に記述された callback が先に実行される。 既存の callback を Model もしくは Concern に移すときは気をつける必要がある。 以下確認コード class Hoge < ApplicationRecord include HogeConcern before_validation -> { puts "before_valida…
マイクロサービスの事例を調べた。 多少まとめた方がいいんだろうけど、一覧があるだけでも一定の価値はあると思ったので載せておく。 Cookpad https://logmi.jp/tech/articles/320715 https://techlife.cookpad.com/entry/2016/03/16/100043 Technical Succ…