gpt4 book ai didi

validation - 未声明的类型 'valid',没有这样的模块 'Validation'

转载 作者:行者123 更新时间:2023-12-01 12:18:26 28 4
gpt4 key购买 nike

当我尝试输入时,我正在关注 Ray Wenderlich ( https://videos.raywenderlich.com/screencasts/545-server-side-swift-with-vapor-basic-validation ) 的屏幕截图(它没有可编译的项目)

let input: Valid<OnlyAlphanumeric> = try request.data["input"].validated()

编译器告诉我 Valid 不存在。我试着寻找这个,发现 Vapor 不再像这样进行验证,它使用在这里找到的不同行:https://stackoverflow.com/a/45363444/2305517它们是:

guard let input = req.data["input"]?.string else { throw SomeError }
try input.validated(by: OnlyAlphanumeric())

但是字符串没有一个名为 validated(by:) 的函数

我尝试导入 Validation,但该模块不存在。

现在有办法完成教程吗?验证似乎根本不在 Vapor 代码中。

最佳答案

您需要添加 validation-provider打包到你的项目中。您可以通过将包添加到 Package.swift 文件中的依赖项数组来执行此操作:

对于 Swift 3,您将添加:

.Package(url: "https://github.com/vapor/validation-provider.git", majorVersion: 1)

在 Swift 4 中,它看起来像这样:

.package(url: "https://github.com/vapor/validation-provider.git", from: "1.0.0"),

然后运行vapor update,如果你使用的是Xcode,vapor xcode

然后您可以将 ValidationProvider 导入到您需要它的文件中。

确保将提供程序添加到您的config:

try config.addProvider(ValidationProvider.Provider.self)

关于validation - 未声明的类型 'valid',没有这样的模块 'Validation',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46349157/

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