gpt4 book ai didi

ruby-on-rails - before_save 在验证后运行吗?

转载 作者:数据小太阳 更新时间:2023-10-29 06:51:16 25 4
gpt4 key购买 nike

我的自定义验证似乎在我的 before_save block 之前运行,这对我来说很奇怪。我知道 before_validation,但我正在尝试测试我的自定义验证器,所以 before_validation Hook 不允许我这样做。我还读到测试私有(private)方法(我的验证器)是不好的做法。我该怎么办?

更多信息:我们希望用户能够上传带有 URL 或文件的文档,但不能同时上传或不上传 (xor)。我的验证器检查这些的异或。如果用户编辑文档,before_save Hook 会删除当前的 URL 或文件。理论上,流程应该是:

  1. 上传文件
  2. 验证并保存
  3. 上传网址
  4. before_save、验证、保存

但在我的测试中,我收到验证错误,表明 before_save 没有发生。

最佳答案

after_initialize ↓ (1)

before_validation ↓ (2)
after_validation ↓ (3)

before_save ↓ (4) 

before_create ↓ (5)
after_create ↓ (6)

after_save ↓ (7)

after_commit ↓ (8)

关于ruby-on-rails - before_save 在验证后运行吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29262699/

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