teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

追記

2020/10/25 07:46

投稿

winterboum
winterboum

スコア23654

answer CHANGED
@@ -1,3 +1,12 @@
1
1
  精通しているわけではないので様子見てましたが、、、、
2
2
 
3
- 私が知っている範囲では database の not null option に条件をつけるということは見たことがありません。
3
+ 私が知っている範囲では database の not null option に条件をつけるということは見たことがありません。
4
+
5
+ 必須チェックをどちらでやらせるかは何方も良い点今ひとつな点があります。
6
+
7
+ validation でやると エラーメッセージの表示がRailsの枠内でできるので楽です。
8
+ しかし 生SQLでnulなデータを作ってしまうことはできてしまいます。
9
+ また、validationを設定する前に作られたデータにはnullのものが残っている可能性があり、それが悪さする例をいくつも見てきました。
10
+
11
+ DBでやらせると、nullなデータはなくなります。
12
+ しかしエラーをエラーメッセージに載せるのが厄介でしょう。