Rails中引用bcrypt-ruby导致测试速度变慢解决办法

        慢速加密的密码很难破解。慢速加密的过程会延长测试的运行时间,不过可以做个简单的设置改变这种情况。 bcrypt-ruby 使用耗时因子(cost factor)设定加密过程的耗时,耗时因子的默认值倾向于安全性而不是速度,在生产环境这种设置很好,但测试时的关注点却有所不同:测试追求的是速度,而不用在意测试数据库中用户的密码强度。我们可以在“测试环境”配置文件 config/environments/test.rb 中加入一行代码来解决速度慢的问题:把耗时因子的默认值修改为最小值,提升加密的速度,即使测试量很少,修改设置之后速度的提升也是很明显的(《Ruby on Rails Tutorial》)

ActiveModel::SecurePassword.min_cost = true


        顺便,Rails 还会自动把有错误的字段包含在一个 class 为 field_with_errors div 元素中,也就是在表单出错的位置加上一个field_with_errors的class,这样就可以通过设定样式表来对错误的域予以提示。

        默认情况下帮助函数只可以在视图中使用,不能在控制器中使用,如果需要同时在控制器和视图中使用帮助函数,就要手动引入帮助函数所在的模块。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值