Работа с интернационализацией и ошибками отправки формы - PullRequest
1 голос
/ 28 марта 2012

В рельсах, если у вас есть ресурс (например, книги), URL-адрес для его создания равен

/books/new

Если при попытке создать новую книгу (ресурс) возникает ошибка, URL становится

/books

Это вызывает у меня проблемы с интернационализацией.Если у пользователя возникнут ошибки при создании новой книги, он увидит сообщение об ошибке и будет помещен на URL /books.Если мой пользователь по какой-то причине находится на «неправильном» языке, то при попытке изменить язык он увидит другую страницу, поскольку вместо /books/new он находится на /books.Мало того, но сообщение об ошибке больше не будет появляться после того, как они поменяют языки.

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

1 Ответ

0 голосов
/ 28 марта 2012

В вашем действии создания вы можете получать язык постоянно, исправляя язык I18n.locale, даже если он указан в параметрах вашей книги, например:

I18n.locale = params[:book][:locale]

Если вы исправите язык в своем действии создания, вы можете быть уверены, что пользователь увидит хороший язык.

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