Webシステム開発、特にRuby on Railsに関する記事です。
Date.parse()よりも .to_dateの方がいいかもって話(Rails7)
渡されてきた変数dateを確実に日付として扱いたい場合、少なくとも2つの方法がありますよね。
1. Date.parse(date)
2. date.to_date
どちらを使うべきか、迷ったことはありませんか?私の中で結論が出たので、解説します。
値や配列などnon-ActiveRecord オブジェクトのシリアライズをする(Rails7)
RailsでActiveModel::Serializerを使う際、普通にActiveRecordのオブジェクトを引き渡す場合は特に問題ないが、純粋な値や配列を引き渡そうとすると、NoMethodErrorを発生します。
意外に簡単な解決方法を紹介。
Discardによる論理削除時にバリデーションをかける(Rails7)
Discardを使用して論理削除する時に、バリデーションをかけて条件を満たす場合は論理削除しないようにしたいことがあるかと思います。
でも、「rails discard バリデーション」とかで調べても直接的な回答が得られませんでした。
色々調べて時間がかかったので、後学のためメモしておきます。
Rubyで有効数字を指定する方法
有効数字2桁をとりたいとき、ありませんか?
round使えば四捨五入できますが、指定できるのは「小数点以下第何位か?」ですので、上位3桁目を四捨五入して有効数字2桁で返すには別の方法が必要です。
その方法を解説します!
(rails7)並び替え機能acts_as_listでカラム名変更
positionにできるならする方が良いですが、後から追加する場合など、カラム名を変更できます!
modelでcolumnオプションを使えばOK!
ActiveModel::Serializerを使いこなす(Rails7)
gem 'active_model_serializers'をbundle installすることで使用できるActiveModel::Serializer。
モノリスRailsしか知らない人からすると、初めてのことで色々と戸惑うことも多いでしょう。
基本から、私の苦労したカスタマイズまで、備忘録として紹介しておきます。
脆弱性に強い実装4つのポイント(Rails6/JS)
webシステム開発をする際に、避けて通れない「脆弱性」。
個人情報保護の重要性が叫ばれる今、情報漏えいやマルウェア感染の対策をすることは開発者の責務ですよね。
「でも、何からしたらよいかわからない」というあなたへ。
この4つだけは押さえておこう!という基本の脆弱性対策をまとめました。
二重クリックをフロントで防止する方法まとめ(Rails6, jQuery)
Web開発で二重クリックを防止したくなることがありますよね。
ただのページ遷移であれば不要かもしれませんが、データを更新するようなボタンが2度押されると面倒です。
一度押したボタンを非活性にする色々な方法がありましたので、まとめてご紹介します。
PDFの要素検証をする方法(開発者ツールが使えます!)
web開発をしていて、生成したPDFにうまくCSSが効かないとき、どうしてますか?
普通のHTMLページなら開発者ツールで要素検証してデバッグできますが、PDFだとそうはいかないですよね。
簡単な方法がありましたので紹介します。ぜひ試してみてね。
【Ruby】Date型が勝手にTime型になるメソッドを発見したのでメモ
0〜9時にrspecが落ちるからおかしいなと思ったら、タイムゾーン以前に型が勝手に変換されていました。since(◯.days)やago(◯.days)はDate型でもTime型に変換されます。
その上で色々ややこしく勉強になったので、メモを残しておきます。