Rails 5 API中必需的参数验证

时间:2019-04-11 12:14:38

标签: ruby-on-rails ruby validation activemodel rails-api

感谢您关注此内容。我有一个Rails 5 API应用程序。我正在使用ActiveModel验证来验证参数。 我需要验证参数的键。即。所有键都是强制性的,以保持请求的结构唯一,但可以为空(即值) 我知道

validates :key presence: true

验证,但它正在检查是否有该值。如我所说,它可以有空白值。

我正在使用params.permit,以便不允许使用其他键

include ActiveModel::Validations
  validates :key1, presence: true
def initialize
  @key1 = "val"
  @key2 = "val2"
  params.permit(:key1,:key2)
end

我需要强迫用户使用允许所有空格的所有参数进行请求

预先感谢

3 个答案:

答案 0 :(得分:0)

您好,您应该像这样在模型中添加allow_blank选项:

shell_exec

希望它能提供帮助

答案 1 :(得分:0)

在文档中,您需要指定allow_blank,如:

tarfile.open(tar_file_path, 'w:xz', compresslevel=9) as tf: ...

希望这会有所帮助!

答案 2 :(得分:0)

您可以尝试如下操作:

validates :key, presence: true, allow_blank: true

allow_blank: The :allow_blank option is similar to the :allow_nil option.This option will let validation pass if the attribute's value is blank?, like nil or an empty string for example.

注意:将允许nil