Size: a a a

Laravel для начинающих

2021 March 05

SC

Sergey Chizhik in Laravel для начинающих
Ну пожалуйста
источник

VP

Vasile Papuc in Laravel для начинающих
🙊
источник

SC

Sergey Chizhik in Laravel для начинающих
Shamil 😏
Проблема в том, что указанные в документации методы проверок не покрывают
-Проверку наличия полей json (как например в тестах assertJsonStructure)
-Проверку значений json
Или я что-то упускаю?
Это все можно покрыть стандартными правилами
источник

SC

Sergey Chizhik in Laravel для начинающих
Ну, без излишеств конечно
источник

S

Shamil 😏 in Laravel для начинающих
Sergey Chizhik
Покажи правила валидации
Так их пока нет. Вопрос заключается, можно ли это сделать и как
источник

MP

Maksim (Ellrion) Pla... in Laravel для начинающих
Shamil 😏
Проблема в том, что указанные в документации методы проверок не покрывают
-Проверку наличия полей json (как например в тестах assertJsonStructure)
-Проверку значений json
Или я что-то упускаю?
чёйто не покрывают?
required тот же есть.
разницы между джейсоном и просто пост параметрами особо нет
источник

SC

Sergey Chizhik in Laravel для начинающих
Shamil 😏
Так их пока нет. Вопрос заключается, можно ли это сделать и как
Пишешь
receipt.*.barcode => 'required|string|regex'

итд
источник

W

Who user in Laravel для начинающих
$validator = Validator::make($request->all(), [
   'person.*.email' => 'email|unique:users',
   'person.*.first_name' => 'required_with:person.*.last_name',
]);
источник

S

Shamil 😏 in Laravel для начинающих
Sergey Chizhik
Пишешь
receipt.*.barcode => 'required|string|regex'

итд
ОК, вот это мне и нужно. Спасибо, попробую
источник

SC

Sergey Chizhik in Laravel для начинающих
Пожалуйста
источник

a

alexey in Laravel для начинающих
Каким-то образом можно в тестах сделать так, чтобы он проверял 2 варианта респонза? т.е. 1й вариант, когда данных нет и приходит только пустой массив, второй вариант - когда в массиве есть данные
источник

AH

Andrey Helldar in Laravel для начинающих
Serg Serdyuk
эт понятно. я просто больше спрашиваю в том ключе, что если ставить редиску, то придется эту всю логику (храниение ip, последней активности итд) писать самому? или лара умеет это все пихать в редис? в мануале не вижу подобного(
Сессии штука такая, что куда бы ты её не записал, по истечении срока они удалятся, так что все данные вида последней активности и прочего сто процентов будут потеряны.
источник

a

alexey in Laravel для начинающих
"success": true,
   "response": {
       "ticket": [
           {
           "deadline": "2020-03-02 18:00:00",
           "files": null,
           "rank": "1",
           "pult_id": "14918",
           "group": "1",
           "name": "Название тикета",
           "contact_owner": "9000000000",
           "manager_phone": "9180000000",
           "manager_name": "манагер",
           "text": "text",
           "technic_id": "2",
           "creator_id": 1,
           "status_id": 1,
           "problem_id": "2",
           "can_modify": true,
           "from": "bla bla",
           "updated_at": "2021-03-05T12:02:43.000000Z",
           "created_at": "2021-03-05T12:02:43.000000Z",
           "id": 1
       }]
   },
   "error": null,
   "message": ""


"success": true,
   "response": {
       "ticket": []
   },
   "error": null,
   "message": ""
источник

a

alexey in Laravel для начинающих
сейчас проверяю с assertJsonStructure()
источник

SS

Serg Serdyuk in Laravel для начинающих
Andrey Helldar
Сессии штука такая, что куда бы ты её не записал, по истечении срока они удалятся, так что все данные вида последней активности и прочего сто процентов будут потеряны.
это я понимать) допустим, мы ей вкрутим max_lifetime в пыхе в пару месяцев и в ларе поднимем параметры в конфиге

т.е. в моем случае (те же брошенные корзины) проще всего наверное заводить юзеру какой то уникальный идентификатор, класть его в локалсторадж или типа того, и по нему выполнять нужные операции (та же корзина, в частности), а сессия пусть живет своей жизнью🌚
источник

AH

Andrey Helldar in Laravel для начинающих
alexey
сейчас проверяю с assertJsonStructure()
В новых версиях phpunit вырезали этот метод
источник

AH

Andrey Helldar in Laravel для начинающих
alexey
Каким-то образом можно в тестах сделать так, чтобы он проверял 2 варианта респонза? т.е. 1й вариант, когда данных нет и приходит только пустой массив, второй вариант - когда в массиве есть данные
А вообще для получения первого метода нужно явно что-то передать, чтобы 100% пришли заполненные данные, а при тесте второго, чтобы 100% пришли пустые. И проверять.
источник

a

alexey in Laravel для начинающих
Andrey Helldar
А вообще для получения первого метода нужно явно что-то передать, чтобы 100% пришли заполненные данные, а при тесте второго, чтобы 100% пришли пустые. И проверять.
т.е. лучше сделать отдельно метод с предварительным заполнением и отдельно с удалением всего из таблицы?
источник

AH

Andrey Helldar in Laravel для начинающих
alexey
т.е. лучше сделать отдельно метод с предварительным заполнением и отдельно с удалением всего из таблицы?
Зачем?
Вызываешь трейт RefreshDatabase и "оно само" перед запуском каждого теста очищает базу
источник

a

alexey in Laravel для начинающих
Andrey Helldar
Зачем?
Вызываешь трейт RefreshDatabase и "оно само" перед запуском каждого теста очищает базу
понял, пойду делать добавление данных перед тестом. спасибо
источник