gpt4 book ai didi

ruby-on-rails - 在 Rails 中保存记录时抑制错误

转载 作者:数据小太阳 更新时间:2023-10-29 07:59:36 24 4
gpt4 key购买 nike

我正在将数据保存到表中。

Question
title:string
author_id:integer
description:text
upvotes:integer

如果“question.upvotes”的值为 1000000000000000000000,将导致错误,因为它无法保存到“整数”类型的列中。

如何抑制这个错误?我希望我的程序继续运行,即使记录保存失败。

我试过了,但它并没有抑制错误:

... some code

if my_question.save
end

some more code...

最佳答案

也许只是将该值固定为最大可能值?将类似这样的内容添加到您的 Question 模型中:

# app/models/question.rb
UPVOTE_MAX_VALUE = 2_147_483_647 # integer max value in postgresql
before_validation :check_upvote_max_size

private
def check_upvotes_max_size
self.upvotes = UPVOTE_MAX_VALUE if upvotes > UPVOTE_MAX_VALUE
end

关于ruby-on-rails - 在 Rails 中保存记录时抑制错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27719129/

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