Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
192 views
in Technique[技术] by (71.8m points)

Why does Rails alter a record with 0 for an integer

In a rails console session (and with the application), where mobileis of datatype integer

User.last.update(mobile: nil)

the record gets updated with a '0'. The same is occuring via form submission.

mobile: 0,

There is no model requirement for validating presence of the field. However a uniqueness is processed

validates :mobile, uniqueness: { scope: :nation_id, message: (I18n.t('user.define_one_mobile_per_nation')) }, if: -> { mobile.present? }

Why is this nil data input being interpreted as a 0 & how can this be avoided?

question from:https://stackoverflow.com/questions/65917794/why-does-rails-alter-a-record-with-0-for-an-integer

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)
Waitting for answers

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...