yiiframework-ru icon indicating copy to clipboard operation
yiiframework-ru copied to clipboard

Есть ли смысл использовать Yii::t на русскоязычном сайте?

Open rugabarbo opened this issue 8 years ago • 6 comments
trafficstars

Заметил, что местами Yii::t используется, а местами - нет. Есть ли смысл и дальше использовать его? Ведь сайт русскоязычный. Если да, то на какие языки планируется перевод?

rugabarbo avatar Jan 21 '17 09:01 rugabarbo

Нет, в этом случае смысла особо нет.

samdark avatar Jan 22 '17 08:01 samdark

Тогда можем постепенно вычищать из проекта вызовы Yii::t() и папку messages? Мне видится, что это немного упростит поддержку и развитие.

rugabarbo avatar Jan 22 '17 08:01 rugabarbo

Да.

samdark avatar Jan 22 '17 08:01 samdark

Ещё чуть вычистил https://github.com/samdark/yiiframework-ru/commit/71af41f8e38c4b82873db4109548f38f3bfb3c29

samdark avatar Feb 24 '17 14:02 samdark

Считаю, что лучше оставить. Почему? Это централизованнное хранение сообщений и текста на сайте. Меняем только в одном месте. Например, Yii::t('app', 'username'). Раньше было "логин". Решили вдруг переименовать в "имя пользователя", меняем только в одном месте.

Также люди всегда будут знать где искать тексты в структуре проекта. Это как с контролеррами, решили все хранить в папке controllers, так и делаем, так и пишем, нет разногласий.

Так что считаю, наоборот, все тексты хранить в центральном хранилище. Пока писал, появилась мысль, что круто было сделать вложенность или категорий текстов. Что это? Например, в хранилище текста (text.php) пишешь

user => [
  errors => [
    register => 'Ошибка регистрации'
    login => 'Ошибка при входе'
  ]
]

А в коде вызываешь Yii::getText('user.errors.register');

Carsak avatar Oct 17 '17 03:10 Carsak

Раньше было "логин". Решили вдруг переименовать в "имя пользователя", меняем только в одном месте.

Лучше в этом случае пройтись через CTRL+F и заменить в коде....не такая уж частая эта задача.

Составлять переводы eng->rus для КАЖДОГО текста - это безрассудная трата калорий в данном случае. Тексты бывают сложные и длинные!

Yii::getText - избыточен тоже, в зависимости от того где это используется - могу предложить альтернативы: $this->render или Widget или Enum::label($code)

githubjeka avatar Oct 17 '17 06:10 githubjeka