Size: a a a

2021 August 09

AE

Alexander Egorov in Laravel Pro
а перед каждым тестом заполнять
источник

BK

Boris Kim in Laravel Pro
Всем привет!
Подскажите, в view когда в ссылочный тег указываю имя роута
<a href="{{ route('name_route') }}">Page</a>
Туда можно указывать имя динамически?
К примеру у меня есть таблица, и я хочу циклом передавать
ссылку в href. Как это можно сделать?
источник

А

Антон in Laravel Pro
А ты точно понимаешь, как тесты работают? Если ты все тесты запустишь внутри транзакции, у тебя между тестами может быть проблема с данными: проблема уникальности, проблема, когда данные есть, но их быть не должно по логике.
источник

AE

Alexander Egorov in Laravel Pro
Да прекрасно это понимаю)))) понятно что правильнее конечно именно перед каждым, но в тестах тестируются одни и те же данные, разбиение на тесты сделаны для более удобного чтения
источник

XR

X Ray in Laravel Pro
Коллеги, приветствую!
Подскажите, по локализации и интернационализации.
Много лет занимаюсь разработкой на PHP, но фреймворки всегда старался избегать. Недавно покинул прошлое место работы, сейчас в творческом отпуске всё-таки решил плотно заняться PHP фреймворками - при всех минусах, неоспорим самый важный плюс - скорость разработки (ну и большинство вакансий в основном требуют глубоких знаний основных фреймворков). Начать решил с Laravel.
Проекты над которыми я работаю, в своём большинстве требуют "многоязычности". На чистом PHP (без фремворков), в последнее время я отдаю предпочтение gettext, очень удобно - отдал переводчику файл, он его открыл в Poedit, перевел и вернул, и не нужно знать ему синтаксиса PHP даже базово. К тому же идеальная плюрализация в не зависимости от языка.
В Laravel, судя по документации, переводы - это массивы или JSON. Реализация вопросов не вызывает, кроме скорости работы при использовании фраз целиком в качестве ключей в сравнении с gettext (бывает большая путаница с использованием коротких ключей для фраз переводов для больших проектов). А вот плюрализация для языков, морфологически отличных от английского, при таком решении мне показалось проблематичной. Есть 0, 1, 2-4, 5-20, 21, 22-24 и т.д.
gettext решает эту проблему очень просто. Первое, что приходит в голову, это использовать gettext в Laravel, но возможно уже существуют решения для этого, поделитесь, чтобы не изобретать велосипед?
источник

V

Vladyslav in Laravel Pro
источник

V

Vladyslav in Laravel Pro
'apples' => '{0} There are none|[1,19] There are some|[20,*] There are many',
источник

️V

️️️️️️️️️️Владимир V... in Laravel Pro
источник

AK

Alexander Kozhevniko... in Laravel Pro
да, мак
источник

XR

X Ray in Laravel Pro
Я как раз это и упомянул в своём вопросе. Это прекрасно работает для языков, например, германской группы. Но для русского к примеру, это выглядит как большой костыль. Представьте, к примеру, нужно выводить название чего-то и количество. Сколько фраз в переводе нужно, чтобы охватить диапазон от 0 до 30, к примеру? Для вот этого количества будут разные фразы ведь:  0, 1, 2-4, 5-20, 21, 22-24
источник

V

Vladyslav in Laravel Pro
ах да, дошло :D
источник

XR

X Ray in Laravel Pro
Для английского проблемы нет - сам язык такой, или мало или много
источник

V

Vladyslav in Laravel Pro
ну шош как костыль приводить к 21 к 1, 22-24 - к 2-4 🌚
источник

V

Vladyslav in Laravel Pro
отдавать вторым аргументом в метод последнюю цифру 🌚
источник

V

Vladyslav in Laravel Pro
0 яблок 20 яблок, 1 яблоко 21 яблоко, 22 яблока 2 яблока, 5 яблок 25 яблок
0 - 1 - 2 - 5🌚

а пакеты хз)
источник

V

Vladyslav in Laravel Pro
а хотя тут 11 вылезет :D ну их как то отдельно тоже🌚
источник

️V

️️️️️️️️️️Владимир V... in Laravel Pro
источник

XR

X Ray in Laravel Pro
да алгоритм в это случае понятен, но это будет костыль

как вариант я рассматриваю использование библиотеки  php-gettext/Gettext
заменить TranslationServiceProvider на свой для использования gettext, но возможно уже есть поддерживаемые решения, чтобы свой велосипед не изобретать
источник

V

Vladyslav in Laravel Pro
ухты)
источник

V

Vladyslav in Laravel Pro
ну вот оно оказывается из коробки так и работает
источник