gpt4 book ai didi

ruby-on-rails - 在 Rails 4 中放置 Grape 自定义验证的位置

转载 作者:行者123 更新时间:2023-12-01 23:52:06 25 4
gpt4 key购买 nike

我有一个 Rails 4 项目,它使用 Grape 作为 API 的东西,我想按照葡萄 documentation 中的描述做一些自定义验证。 .我想知道我应该在哪里放置我的自定义验证代码(比如在 lib 文件中),我是否需要包含或要求一些东西才能在我的 API 文件中使用它?

文档告诉你创建一个类,但如果我必须编写许多自定义验证,我会对文件结构感到困惑。

最佳答案

上次我使用 Grape 时,我将自定义验证添加到 lib,然后我将它们要求到任何使用它们的 API 类中。例如:

lib/api/validations/minimum_value.rb

class AlphaNumeric < Grape::Validations::Validator
def validate_param!(attr_name, params)
unless params[attr_name] =~ /^[[:alnum:]]+$/
raise Grape::Exceptions::Validation, params: [@scope.full_name(attr_name)], message: "must consist of alpha-numeric characters"
end
end
end

app/api/twitter.rb

class Twitter::API < Grape::API
require_relative '../../lib/api/validations/minimum_value'

当然你可能想要add lib/api/validations to the auto-loader以防止必须手动要求。

关于ruby-on-rails - 在 Rails 4 中放置 Grape 自定义验证的位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25904588/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com