SELECT news_id FROM news_tags WHERE tag_id = "id тега животное" OR tag_id = "id тега кроты" GROUP BY news_id HAVING COUNT(news_id) = 2; --находим пару животное кроты
UNION
SELECT news_id FROM news_tags WHERE tag_id = "id тега животное" AND news_id not in (SELECT news_id FROM news_tags WHERE tag_id in ("все теги в системе")); -- находим все новости с тегом животные и только ним больше у новости не может быть другого тега.
вот более адекватный запрос который придумал , но всё равно выходит 3 запроса , вопрос теперь возможно ли это как-то собрать в 1 или 2 запроса ?
hello_my_name_is_dany, в выборку входят животные если больше в новости нет других тегов только этот тег и животные + кроты , например если есть новость с животные + собаки оно не должно попадать в выборку , поправил пример www.sqlfiddle.com/#!9/452b5b/2/0
Moskus, Полностью согласен , просто не могу понять где брать тестовые данные , если например я задам их статично , то при добавлении новых данный они будут != статичным , а если же я буду брать динамически и эту "логику" буду воспроизводить в тесте где , например , допущена ошибка тогда тест её покажет.
Moskus, да завтра так и сделаю , просто прочитал пару статей , ответов на SO , и все пишут что тестируют код ответа + что это объект JSON. Может это просто не правильный подход , например каждую функцию безнес логики тестировать Unit тестами , а API тесты как в выше и описал ?
на самом деле это был простой пример , у меня есть ещё 1 мой пакет который реализует кодирование файла , и отдельно он работает хорошо , он открывает делает магию и закрывает файл. А вот вместе с вочером не выходит так.
Макс Мачез можете конечно попробовать поменять в \vendor\composer\installed.json версию jq , но не думаю что это хороший путь + как говорит Никита что-то может сломаться.
Алексей Уколов: в фронденде имеется папка /themes , там лежат все вьюхи сайта , только например с разным расположением элементов и цсс свойств(в принципе как шаблоны в любой другой CMS). Я могу их изменять(это я реализовал). Но ПМ хочет сделать живое привью шаблонов , например перед изменением он хочет посмотреть как этот шаблон выглядит в живую. Вот и стоит сама задача сделать живое привью.
slo_nik: ну фронт у меня как фронт , а бек как админ панель , я частично реализую cms. Для меня-то и в конфиге поменять было бы удобно , но ПМ думает по другому.
slo_nik: нет плагин я так понимаю берёт тот Yii::$app где мы его вызываем , и потом ставит пути тем. Да можно и так уже думал об этом. Но в плагине есть функция добавления новых тем , а тогда мы возвращаемся к проблеме вызова $app из бексайда.
вот более адекватный запрос который придумал , но всё равно выходит 3 запроса , вопрос теперь возможно ли это как-то собрать в 1 или 2 запроса ?