2016-01-13 32 views
-1

如何查看時間是在下午2點到上午8點之間?這是行不通的:查看時間下午2點到8點

value = Time.current.between?(Time.parse("2:00pm"), Time.parse("8:00am")) ? 9 : 4 

如果時間是凌晨1點,它應該返回9,其他4(我想如果9傍晚或晚上如果「正常白天」 - 4。) 任何想法?

+0

交換下午2:00和8:00。第一個參數應該是較低的值,上午8點之前首先出現在下午2點之前。 – jvnill

+0

可能的重複[如何使用紅寶石下載圖片?](http://stackoverflow.com/questions/1074309/how-do-i-download-a-picture-using-ruby) –

+0

@boulder_ruby您粘貼錯誤的鏈接? –

回答

2

交換下午2:00和上午8:00。第一個參數應該是較低的值,上午8點之前首先出現在下午2點之前。

[3] pry(main)> Time.current 
=> 2016-01-13 09:21:14 +0800 
[4] pry(main)> Time.current.between?(Time.parse('9:00am'), Time.parse('2:00pm')) 
=> true 
[5] pry(main)> Time.parse('1:00am').between?(Time.parse('9:00am'), Time.parse('2:00pm')) 
=> false 

UPDATE

您還可以使用Time.current.hour.between?(9, 16)

+0

但它不工作(或我做錯了什麼)。如果晚上或晚上,我需要9。如果'白天正常' - 4 – Kam

+0

添加了更新。 – jvnill

相關問題