加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby-on-rails – 如何使Rails ActiveRecord自动截断设置为具有

发布时间:2020-12-17 04:38:28 所属栏目:百科 来源:网络整理
导读:假设我有一个类,如下所示: class Book ActiveRecord::Base validates :title,:length = {:maximum = 10}end 有没有办法(安装宝石?)我可以让ActiveRecord根据最大长度自动截断值? 例如,当我写: b = Book.newb.title = "123456789012345" # this is longer
假设我有一个类,如下所示:
class Book < ActiveRecord::Base

  validates :title,:length => {:maximum => 10}

end

有没有办法(安装宝石?)我可以让ActiveRecord根据最大长度自动截断值?

例如,当我写:

b = Book.new
b.title = "123456789012345" # this is longer than maximum length of title 10
b.save

应该保存并返回true吗?

如果没有这样的方式,你会如何建议我更普遍地面对这样的问题?

解决方法

好吧,如果你想要将值截断,如果它太长,你就不需要验证,因为它总是会通过.我会像这样处理:
class Book < ActiveRecord::Base
  before_save :truncate_values
  def truncate_values
    self.title = self.title[0..9] if self.title.length > 10
  end
end

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读