Как получить пользовательские поля формы из контроллера - a.k.a. как не использовать помощники по дате в форме - PullRequest
1 голос
/ 03 февраля 2010

Я создал форму со скаффолдом, которая включает в себя два поля даты и времени. Я заменил их на средство выбора даты, и теперь я пытаюсь получить дату из контроллера. Вместо того, чтобы ruby ​​делал всю магическую работу с полями даты, мне просто нужно указать поля, start_date и stop_date, которые я хочу использовать, но я не могу понять, как получить их из моего контроллера. Советы? Спасибо!

1 Ответ

0 голосов
/ 03 февраля 2010

У вас есть как минимум два варианта:

  • Попробуйте использовать Time.parse (params [: start_date]) (который действительно очень хорошо работает)
  • Попробуйте разобратьдовольствуйтесь(что я даже не буду рекомендовать)

Я использую Time.parse с полным успехом.НО имейте в виду, что если ваше приложение пересекает границы страны, анализ по месяцам и дням может измениться.(т. е. 01.10.2008 в Бразилии действительно 10 января 2008 г., по сравнению со стандартом США на 1 октября 2008 г.).

РЕДАКТИРОВАТЬ:

Вот примерс тестовым приложением, которое работает на SQLite.Это должно работать так же для вас.Дайте мне знать, если это не так:

>> a = Post.first
=> #<Post id: 1, title: "title 1 ", updated_by: nil, deleted_by: 1, created_at: "2009-11-23 18:48:23", updated_at: "2009-11-23 18:48:23">
>> a.updated_at = Time.parse('01/02/2010')
=> Sat Jan 02 00:00:00 -0500 2010
>> a.save
  Post Update (44.9ms)   UPDATE "posts" SET "updated_at" = '2010-02-03 12:59:32' WHERE "id" = 1
=> true
>> 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...