Найдено 178 результатов
- 2018.03.08, 15:17
- Форум: Общие вопросы (Yii 2.x)
- Тема: Rules urlManager-а внутри модуля
- Ответы: 17
- Просмотры: 4013
Re: urlManager внутри модуля
я предположил что было бы не плохо загружать маршруты только при обращении к модулю, если не обращаемся то и маршруты не загружаем. Все эти правила служат чтобы заменить внутренний адрес на внешний. При разборе из внешнего, из правил, получаем внутренний и уже тогда ,по внутреннему, становится поня...
- 2018.03.08, 13:33
- Форум: Общие вопросы (Yii 2.x)
- Тема: Rules urlManager-а внутри модуля
- Ответы: 17
- Просмотры: 4013
Re: urlManager внутри модуля
1. Нет, нельзя. Если ваше требование переложить в реальный мир, то ваш вопрос звучит примерно так. "Можно я отправлю человека в магазин, а когда он до него дойдёт, я ему скажу, в какой магазин идти?" а если так? 'bootstrap' => [ 'log', 'app\config\bootstrapModules' ], class bootstrapModul...
- 2018.03.08, 12:00
- Форум: Общие вопросы (Yii 2.x)
- Тема: Rules urlManager-а внутри модуля
- Ответы: 17
- Просмотры: 4013
Re: urlManager внутри модуля
есть такое решение Если модуль реализован как расширение, то можно бутстраписть и так , без указания модуля в 'bootstrap' приложения но выходит что маршруты модуля загружаются в любом случае Так вам же и надо чтобы в любом случае (ну в смысле кроме консоли), или о чем вы тут? я предположил что было...
- 2018.03.08, 11:21
- Форум: Общие вопросы (Yii 2.x)
- Тема: Rules urlManager-а внутри модуля
- Ответы: 17
- Просмотры: 4013
Re: urlManager внутри модуля
«Я прошу человека дойти до магазина а когда он дойдёт скажу в какой отдел ему ити» Вы ведь методы объекта создаёте в самом объекте или slug-и вы тоже прописываете в приложении для всех объектов? Понадобилось по простой причине - хранить правила модуля внутри модуля и применять их только тогда когда ...
- 2018.03.08, 01:22
- Форум: Общие вопросы (Yii 2.x)
- Тема: Rules urlManager-а внутри модуля
- Ответы: 17
- Просмотры: 4013
Rules urlManager-а внутри модуля
Можно ли как то задать маршруты модуля только при его инициализации что бы не забивать их в основные маршруты? есть такое решение https://github.com/albertborsos/yii2-user/blob/38e8b4fea80db919bc9ba09d549afb82e2d0f2d5/Module.php#L18-L24 1) Модуль должен реализовывать BootstrapInterface 2) В конфиге ...
- 2018.03.07, 18:46
- Форум: Общие вопросы (Yii 2.x)
- Тема: Вопросик про beforeValidate
- Ответы: 3
- Просмотры: 1460
Re: Вопросик про beforeValidate
return false
- 2018.03.06, 22:02
- Форум: Общие вопросы (Yii 2.x)
- Тема: Выбрать записи у которых есть только указанные связи
- Ответы: 18
- Просмотры: 5730
Re: Выбрать записи у которых есть только указанные связи
Посоветовали такой вариант, только как это теперь транслировать в yii SELECT `players`.* FROM `players` INNER JOIN `players_styles` ON `players`.`id` = `players_styles`.`player_id` INNER JOIN `style` ON `players_styles`.`style_id` = `style`.`id` LEFT JOIN `players_modes` ON `players`.`id` = `player...
- 2018.03.06, 18:39
- Форум: Общие вопросы (Yii 2.x)
- Тема: Выбрать записи у которых есть только указанные связи
- Ответы: 18
- Просмотры: 5730
Re: Выбрать записи у которых есть только указанные связи
каждый join дублирует запись, если это возможно то попробуйте высчитать количество соответствий в HAVING ели нет то только подзапрос в in(...)
- 2018.03.06, 18:36
- Форум: Общие вопросы (Yii 2.x)
- Тема: Выбрать записи у которых есть только указанные связи
- Ответы: 18
- Просмотры: 5730
Re: Выбрать записи у которых есть только указанные связи
попробуйте убрать лишние связи и оставить только style и players_styles добавьте GROUP BY - у себя проверил, все сработало пс и players_styles есть style_id потому достаточно оставить одну связь в итоге получится что то подобное SELECT p.* FROM players AS p INNER JOIN players_styles ps ON p.id ps.p...
- 2018.03.06, 17:59
- Форум: Общие вопросы (Yii 2.x)
- Тема: Выбрать записи у которых есть только указанные связи
- Ответы: 18
- Просмотры: 5730
Re: Выбрать записи у которых есть только указанные связи
попробуйте убрать лишние связи и оставить только style и players_styles добавьте GROUP BY - у себя проверил, все сработало пс и players_styles есть style_id потому достаточно оставить одну связь в итоге получится что то подобное SELECT p.* FROM players AS p INNER JOIN players_styles ps ON p.id ps.pl...
- 2018.03.06, 17:23
- Форум: Общие вопросы (Yii 2.x)
- Тема: Выбрать записи у которых есть только указанные связи
- Ответы: 18
- Просмотры: 5730
Re: Выбрать записи у которых есть только указанные связи
не уверен что верно отследил зависимости в вашем запросе но можете проверить голым запросом
еще в вашем запросе нет GROUP BY
Код: Выделить всё
p.player_id in (
SELECT ps.player_id
FROM style s
LEFT JOIN players_styles ps
WHERE s.id in('3', '4', '5')
GROUP BY ps.player_id
HAVING COUNT(*)=3
)
- 2018.03.06, 17:02
- Форум: Общие вопросы (Yii 2.x)
- Тема: Выбрать записи у которых есть только указанные связи
- Ответы: 18
- Просмотры: 5730
Re: Выбрать записи у которых есть только указанные связи
В данный момент сделано так: если я указал [1,2,3] и у одной из моделей несколько связей(например: 1,2,3), а у другой (1,2,3,5) то in выберет обе записи. то есть согласно условию в выборку должна попасть только первый объект у которого 1,2,3 а второй проигнорировать? сложно сказать без примера запр...
- 2018.03.06, 16:39
- Форум: Общие вопросы (Yii 2.x)
- Тема: Cannot use 'Object' as class name при вызове "yii"
- Ответы: 9
- Просмотры: 7978
- 2018.03.06, 12:56
- Форум: Общие вопросы (Yii 2.x)
- Тема: Как получить имя старой картинки в экшене?
- Ответы: 9
- Просмотры: 2573
Re: Как получить имя старой картинки в экшене?
Привет. Что касается просто удаления картинки по кнопке я разобрался, там ее нахожу по id и удаляю А тут задача немного другая, удалять картинку из папки и ее запись в базе, при загрузке новой картинке, вместо нее. Проще говоря, есть картинка профиля, когда загружаю новую чтобы старая удалялась Вот...
- 2018.03.06, 12:30
- Форум: Общие вопросы (Yii 2.x)
- Тема: Вывод сочетаемых/сопутствующих товаров
- Ответы: 5
- Просмотры: 1949
Re: Вывод сочетаемых/сопутствующих товаров
Модель товара public function getRelatedAssignments() { return $this->hasMany(RelatedAssignment::class, ['product_id' => 'id']); } public function getRelateds() { return $this->hasMany(Product::class, ['id' => 'related_id'])->via('relatedAssignments'); } Связи class RelatedAssignment extends ActiveR...
- 2018.03.06, 11:20
- Форум: Общие вопросы (Yii 2.x)
- Тема: Выбрать записи у которых есть только указанные связи
- Ответы: 18
- Просмотры: 5730
Re: Выбрать записи у которых есть только указанные связи
Добрый день, не подскажите как сделать select, который будет выбирать записи у которых обязательно есть только указанные связи? В данный момент сделано так: если я указал [1,2,3] и у одной из моделей несколько связей(например: 1,2,3), а у другой (1,2,3,5) то in выберет обе записи. <?php $query ->jo...
- 2018.03.06, 09:35
- Форум: Общие вопросы (Yii 2.x)
- Тема: Как правильно сделать выборку many_many в Yii2?
- Ответы: 11
- Просмотры: 3682
Re: Как правильно сделать выборку many_many в Yii2?
в вашем случае получается что то подобное SELECT `p`.* FROM `products` `p` INNER JOIN `products_categories` ON `p`.`id` = `products_categories`.`product_id` INNER JOIN `categories` `c` ON `products_categories`.`category_id` = `c`.`id` WHERE `c`.`id` IN (2, '3', '4') GROUP BY `p`.`id` из чего следует...
- 2018.03.06, 08:19
- Форум: Общие вопросы (Yii 2.x)
- Тема: Как правильно сделать выборку many_many в Yii2?
- Ответы: 11
- Просмотры: 3682
Re: Как правильно сделать выборку many_many в Yii2?
Relation это связь а не фильтр, потому использовать inner в качестве фильтра это более чем и нормально
- 2018.03.05, 19:51
- Форум: Общие вопросы (Yii 2.x)
- Тема: Как правильно сделать выборку many_many в Yii2?
- Ответы: 11
- Просмотры: 3682
Re: Как правильно сделать выборку many_many в Yii2?
Используйте inner join
- 2018.03.05, 11:23
- Форум: Общие вопросы (Yii 2.x)
- Тема: Как правильно сделать выборку many_many в Yii2?
- Ответы: 11
- Просмотры: 3682
Re: Как правильно сделать выборку many_many в Yii2?
в любом случае запрос должен выглядеть как то так SELECT p.* FROM products WHERE id in(SELETC product_id FROM products_to_category WHERE category_id in (1, 2, 3, ...)) кстати насчет подзапроса, а что если у этих категорий миллион товаров, тогда этот вариант не подходит так вы ведь весь миллион выби...