作为一个偏执的入门级开发人员,我想知道用户是否可以使用某种查询通过带有选择字段的表单将数据插入数据库。
更具体地说,在我的数据库中我有一个性别列(数据类型文本),在我的表单中,我使用select标签并传入2个选项男性和女性。虽然在html中用户只有2个选项可供选择,但db不知道。性别栏几乎可以接受任何内容。我只是想知道一个讨厌的用户是否可以忽略选择选项并以某种方式在“性别”列中插入一个愚蠢的答案?如果是这样,我该如何保护。
答案 0 :(得分:2)
您在这里讨论的是在将数据输入数据库之前需要进行的验证。无效数据可以来自任何地方(直接来自控制器或GUI),并且模型负责在数据提交到数据库之前验证数据。
浏览这些链接。
http://api.rubyonrails.org/classes/ActiveRecord/Validations.html http://guides.rubyonrails.org/active_record_validations_callbacks.html