ruby-on-rails – Rails,在非活动记录模型上使用time_select

ruby-on-rails – Rails,在非活动记录模型上使用time_select,第1张

概述我正在尝试使用time_select将时间输入到模型中,然后执行一些计算. time_select助手准备返回的参数,以便可以在Active Record对象的多参数分配中使用它. 像下面这样的东西 Parameters: {"commit"=>"Calculate", "authenticity_token"=>"eQ/wixLHfrboPd/Ol5IkhQ4lENpt9vc4j0PcIw0Iy 我正在尝试使用time_select将时间输入到模型中,然后执行一些计算.

time_select助手准备返回的参数,以便可以在Active Record对象的多参数分配中使用它.

像下面这样的东西

Parameters: {"commit"=>"Calculate","authenticity_token"=>"eQ/wixLHfrboPd/ol5IkhQ4lENpt9vc4j0PcIw0Iy/M=","calculator"=>{"time(2i)"=>"6","time(3i)"=>"10","time(4i)"=>"17","time(5i)"=>"15","time(1i)"=>"2009"}}

我的问题是,在非活动记录模型中使用此格式的最佳方法是什么.另外还有一个注意事项. (5i),(4i)等是什么意思? (除了区分不同时间值的明显原因,基本上为什么它以这种方式命名)

谢谢

解决方法 您可以在非活动记录模型中创建方法,如下所示

# This will return a Time object from provIDed hashdef parse_calculator_time(hash)  Time.parse("#{hash['time1i']}-#{hash['time2i']}-#{hash['time3i']} #{hash['time4i']}:#{hash['time5i']}")end

然后,您可以从控制器 *** 作中调用该方法,如下所示

time_object = YourModel.parse_calculator_time(params[:calculator])

它可能不是最好的解决方案,但它使用起来很简单.

干杯:)

总结

以上是内存溢出为你收集整理的ruby-on-rails – Rails,在非活动记录模型上使用time_select全部内容,希望文章能够帮你解决ruby-on-rails – Rails,在非活动记录模型上使用time_select所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1288129.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-09
下一篇 2022-06-09

发表评论

登录后才能评论

评论列表(0条)

保存