Как изменить, куда идет путь по умолчанию для "Ruby on Rails "redirect_to @user?

В настоящее время у меня есть приложение rails, где пользовательские профили просматриваются в "/ users /: id", но я хочу изменить это на "/:username". Я исправил маршруты рельсов, так что у меня есть "match" /:username',:to => 'users#show', но я хочу сделать так, чтобы я мог легко использовать "redirect_to @user" в контроллерах, чтобы он идет по этому новому маршруту. В настоящее время он все еще идет по "/users/:id".

Как мне отредактировать маршрут по умолчанию?

1 ответ

Решение

Если вы добавите в свою строку соответствия следующее: ":as => user_path" Я думаю, что это сработает, но я не знаю, будет ли это конфликтовать с уже существующей... вероятно, созданной devise...

Еще немного об этом: насколько я знаю (я могу ошибаться здесь), redirect_to @userпросто звонит user_path(@user), Так что если вы создаете новый помощник URL под названием user_pathтогда он должен работать так, как вы ожидаете.

Другие вопросы по тегам