Маршрутизация через модели без базы данных - PullRequest
1 голос
/ 21 января 2011

У нас есть структура, в которой мы хотим просматривать и редактировать записи, отфильтрованные по дням. Но мы хотим, чтобы этот день стал частью URL

 /time_records/day

Это представление показывает time_records для определенного дня. Но когда мы добавляем time_record, он должен перенаправить обратно на ту же страницу.

Однако он вызывает time_records без части «день» для вызова create. Чтобы перенаправить обратно на ту же страницу, я думаю, что должен передать объект модели в redirect_to, но эта модель должна быть самим днем.

Является ли единственным решением добавить объект Day в мою модель? Это кажется пустой тратой, поскольку DateTime уже достаточно логически, речь идет только о маршрутизации.

1 Ответ

0 голосов
/ 21 января 2011

С:

match '/time_records(/:day)' => 'time_records#show', as: 'time_records'

в routes.rb вы можете использовать вспомогательный метод url:

time_records_path(day: Date.today)

для генерации "/time_records/2011-01-21".Это работает отчасти потому, что в Rails объекты Date реагируют на метод to_param.

Все это предполагает, что вы используете ruby ​​1.9.x и rails 3.0.x

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...