Дмитрий, Не уверен, но вроде как можно вместо использовать , и в её обработчике нажатия отсылать форму. Тогда на бэке можно будет контролировать какая кнопка была нажата.
Drno, С WSL2 почти ничего не надо настраивать. Разве что автостарт сервисов организовать, но это не обязательно. Я пару лет назад из-за необходимости VisualStudio переехал на Windows (после 15 лет на Ubuntu) и меня пока всё устраивает (в плане веб-разработки)
Host::find()->alias('h')
->select(['h.*', 'count(r.*) as request_count])
->joinWith('Request r') // удобно так если настроены связи между моделями
//->where() если надо не всё
->groupBy('h.id')
->orderBy('h.id')
->limit(10)
->all()
Покажите все столбцы Host и Request и скажите какой результат вы хотите получить. (Сейчас запрос, который вы показали, не очень вяжется с текстом вопроса.)
Реверс-инжиниринг? Смотрите файл в hex-редакторе, а не в блокноте. Помните о том что файл может быть упакован архиватором, тогда надо его сначала распаковать. Сравнивайте два файла после изменения каких-либо параметров в игре.
Василий, вы сейчас насоветуете. NULL в БД для того и нужно, чтобы сказать "данных нет". Не пустое поле, а именно что значение не задано. Оно под эту задачу и заточено.
Соответственно, если логика приложения такова, что поле hash может быть не заполненным, то его объявление следует делать без NOT NULL.
А с какой целью вы новости по разным таблицам раскидали? Ежели без этого никак, то делаете сложный запрос с join, вложенными select-ами и прочей радостью. Конкретный пример не видя вашей БД дать сложно.