2016-11-06 1 views
0

Я не уверен, почему я не могу понять, что это так просто.rails - получить формат даты YYYY-MM-dd в строке

Я пытаюсь связать сегодняшнюю дату в формате YYYY-MM-dd с строкой, и она не работает.

Я попытался создать дату с now = Time.now.strftime("%Y-%m-%d") и конкатенации его как этот

'http://api.flurry.com/appMetrics/Sessions?apiAccessCode=########&apiKey=#########&startDate='+now+'&endDate='+now

Пожалуйста, посоветуйте, спасибо.

Редактировать: Если я установил now = '2016-11-05', тогда все будет хорошо. Поэтому проблема в том, как я создаю свою дату.

+0

Когда я создаю строку с жесткими цифрами, мой api отлично работает. эта строка выглядит так: http://api.flurry.com/appMetrics/Sessions?apiAccessCode=########&apiKey=########&startDate=2016-11-05&endDate=2016- 11-05', и когда я пытаюсь динамически установить дату, он просто возвращает 0 @TerryLi – Walker

+0

Я не уверен, как проверить, что такое 'now', но я знаю, что' now' не является строкой с датой 2016-11-05, потому что эта строка api возвращает результат. Ошибка заключается в моем создании даты или в конкатенации. @TerryLi Спасибо Терри – Walker

+2

Я пробовал 'now = Time.now.strftime ("% Y-% m-% d ")', за которым следует 'url =" http://api.flurry.com/appMetrics/Sessions?apiAccessCode = ###### & apiKey = ###### & startDate = "+ now +" & endDate = "+ now', который отлично работает в интерактивном рубиновом сеансе –

ответ

1

Я закончил работу с интерполяцией строк после того, как он не работал со строчной интерполяцией. Почему он не работает? Оказывается, вам нужно использовать двойные кавычки, если не требуется интерполяция как литерал !!

now = Time.now.strftime("%Y-%m-%d") 

"http://api.flurry.com/appMetrics/Sessions?apiAccessCode=########&apiKey=#########&startDate=#{now}&endDate=#{now}"