Size: a a a

2020 September 17

AB

Alexander Borisov in Yii Framework 3
ты утверждаешь, что данные могут быть в невалидном состоянии, так?
источник

NO

Nex Otaku in Yii Framework 3
Где я это утверждал?
источник

AB

Alexander Borisov in Yii Framework 3
вот
источник

AB

Alexander Borisov in Yii Framework 3
Переслано от Nex Otaku
У тебя в карточке ИП например может быть "Учётный номер в реестре ИП" или что-то подобное, обязательное для заполнения при создании ИП. И таких полей может быть сколько угодно.

У тебя этого поля нет сейчас. Создать без него запись ты не можешь. Но надо. Что делать?
источник

NO

Nex Otaku in Yii Framework 3
Тут вопрос, а не утверждение.
источник

AB

Alexander Borisov in Yii Framework 3
и какой ответ?
источник

NO

Nex Otaku in Yii Framework 3
Что делать, когда ИП создать надо, а данных нет.
источник

NO

Nex Otaku in Yii Framework 3
Проектировать так, чтобы наличие ИП не было обязательным.
источник

NO

Nex Otaku in Yii Framework 3
Если не делать жёсткой связи в БД и в коде, это достижимо.
источник

NO

Nex Otaku in Yii Framework 3
Уметь надо, конечно. И хотеть )
источник

NO

Nex Otaku in Yii Framework 3
Два диаметрально противоположных подхода — либо мы подгоняем систему под реальность, либо подстраиваем тех кто работает с системой под требования, заложенные в систему.

Программисты, по естественным причинам склонны ставить код выше бизнес-требований (потому что он к ним ближе), а потому стараются заложить наиболее жёсткие ограничения по структуре данных.

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

Такая система наиболее удобна для программиста. Но именно такая система наиболее уязвима к изменениям.

Она хрупка, и постоянно приносит неудобства. Особенно, если программист не понимает источника проблемы.

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

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

RM

Rustam Mamadaminov in Yii Framework 3
Laravel 8 :)
источник

DS

Dmitriy S in Yii Framework 3
@lachezis, ты точно здесь в слове through букву r не пропустил?😉
https://github.com/cycle/annotated/blob/master/src/Annotation/Relation/ManyToMany.php#L62
источник

СП

Сергей Предводителев... in Yii Framework 3
Подскажите по тестам...

Хочу написать интеграционный тест для класса, который работает с Cycle ORM. Для тестирования использую Codeception.

То есть мне нужно:

А) получить рабочий DatabaseManager, а для этого надо откуда-то взять данные для подключения, где и в каком виде их лучше хранить?

Б) Как правильнее организовать очистку того, что было добавлено в БД?
источник

RT

Roman Tsurkanu in Yii Framework 3
A. codeception вроде поддерживает свои env файлы
источник

RT

Roman Tsurkanu in Yii Framework 3
Б. В codeception есть очистка после каждого теста
источник

RT

Roman Tsurkanu in Yii Framework 3
модуль Db
источник

RT

Roman Tsurkanu in Yii Framework 3
источник

RT

Roman Tsurkanu in Yii Framework 3
dump - path to database dump
populate: false - whether the the dump should be loaded before the test suite is started
cleanup: false - whether the dump should be reloaded before each test
источник

СП

Сергей Предводителев... in Yii Framework 3
Roman Tsurkanu
dump - path to database dump
populate: false - whether the the dump should be loaded before the test suite is started
cleanup: false - whether the dump should be reloaded before each test
Да, я видел этот модуль... Получается для интеграционных тестов и для приёмочных использовать разные базы данных?
источник