gpt4 book ai didi

validation - FuelPHP 中类似 CakePHP 的验证

转载 作者:行者123 更新时间:2023-12-04 06:25:49 24 4
gpt4 key购买 nike

大家好,我们公司希望开始使用 FuelPHP 作为主要的开发框架。

就我个人而言,我来自 CakePHP 背景,并且非常喜欢 Cake 处理很多事情的方式,例如验证——即在模型中设置一次规则,一切都协同工作以遵守规则。

然而,进入 Fuel,看起来他们对此有不同的方法,需要在 Controller 中设置验证规则。这样做的缺点是有很多重复的代码 - 即,即使您只有添加和编辑操作,这仍然是您需要定义规则的两个地方。

因此,我希望有人能够帮助我并让我知道模型是否可以处理验证?

谢谢 :)

最佳答案

由于最近太忙了,遗憾的是我没有时间去记录很多东西。有几个选项:

  • 创建一个 set_form_fields() 以与您传递 Fieldset 类的实例并应设置所有字段(包括验证)的验证一起使用。一个例子可以是 found here (虽然基于过时的 Fuel 版本)。一旦在模型中使用了这样的方法,您就可以使用 Validation::factory()->add_model('Model_Example')(规则也可以在模型中创建,前缀为 _validation_,你可以在添加模型时使用它们,如上)
  • $_properties 中设置验证规则Orm\Model 类的属性并像 1 一样添加模型。(Orm\Model 内置了 set_form_fields() 方法)
  • 将 Orm\Observer_Validation 添加到您的 Orm\Model $_observers属性和验证将在保存模型时完成,抛出 ValidationFailed失败时的异常。在此之后,可以通过 Validation 类中的类名获取错误,例如:当 Model_Example 实例因验证而无法保存时,您可以使用 Validation::instance('Model_Example') 获取完整的验证实例。或使用 Validation::instance('Model_Example')->show_errors() 获取错误
  • 关于validation - FuelPHP 中类似 CakePHP 的验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6057601/

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