@yii2ru

Страница 581 из 1721
Evgeniy
13.09.2017
13:40:35
Я всегда начинаю с составления SQL запроса.
получается связь будет строиться так >andFilterWhere(['like', 'compatibility.models.marks.name', $this->mark])

Evgeniy
13.09.2017
13:47:14
Google
Konstantin
13.09.2017
13:48:49
короче если у тебя, к примеру, есть статья, а у нее есть теги, и это связь N-N

то

Article::find()->joinWith('tags')->andFilterWhere(['tag.id' => $tag_ids])

работать будет, то найдет все статьи, в которых есть хотя бы один тег из $tag_ids

если придумаешь, как без велосипедов найти все статьи, в которых есть каждый из тегов в $tag_ids - похвастайся

Konstantin
13.09.2017
13:54:01
ну вот, и в своем стремлении к изяществу и нормализации ты можешь выгрести жуткие и тяжеловесные запросы

Isaev
13.09.2017
14:09:37
Как прикрутить валидацию номера телефона?

<?=$form->field($model,'phone')->widget(MaskedInput::className(),['mask'=>'+7 (999) 999-99-99'])->textInput(['placeholder'=>'+7 (999) 999-99-99','class'=>''])->label('Ваш Телефон');?>



Konstantin
13.09.2017
14:20:04
Но есть же кеширование)
мне кажется, что лучше денормализация

Google
Konstantin
13.09.2017
14:21:18
ну добавить избыточности

ради упрощения запросов

ну вот выводишь ты статьи, а в них комментарии есть

а надо тебе показать возле статьи сколько комментариев

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

не говоря уже о том, чтобы отсортировать статьи по количеству комментариев\

Evgeniy
13.09.2017
14:36:17
не говоря уже о том, чтобы отсортировать статьи по количеству комментариев\
С комментариями понятно)) со всем остальным?) атрибуты марки модели

Konstantin
13.09.2017
14:36:43
связи 1-N не представляют никаких сложностей

Evgeniy
13.09.2017
14:38:34
связи 1-N не представляют никаких сложностей
Это да. Но продукт связан с таблицей совместимости с моделью техники, а в свою очередь модель с маркой. И хочу вывести товары определённой марки техники)

Konstantin
13.09.2017
14:38:49
ну и что?

ой

продукт и модель связаны как N-N?

Evgeniy
13.09.2017
14:39:58
продукт и модель связаны как N-N?
Не всегда один продукт может принадлежать к нескольким моделям

Konstantin
13.09.2017
14:40:11
N-N

Dmitry
13.09.2017
14:40:12
Немного оффтопа

http://www.opennet.ru/opennews/art.shtml?num=47192

Konstantin
13.09.2017
14:40:55
круто

и новый сублайм сегодня появился

Ринат
13.09.2017
14:41:12
типа противовес шторму?)

Konstantin
13.09.2017
14:41:22
Google
Ivan
13.09.2017
14:41:42
типа противовес шторму?)
Любая конкуренция лучше отсутствия конкуренции

Ринат
13.09.2017
14:42:02
да, это так

Konstantin
13.09.2017
14:42:08
вообще, ты можешь отдельным запросом получить все модели нужной марки

а после этого вторым запросом уже все товары нужных моделей

а если хочешь, можешь еще эти два запроса выполнять не отдельно, а вместе, как вложенный запрос

между джоинами и вложенным запросом я бы тут выбрал вложенный запрос

Evgeniy
13.09.2017
14:45:40
между джоинами и вложенным запросом я бы тут выбрал вложенный запрос
Спасибо за идею) кстати, она самая адекватная из всех которые перебрал)

Konstantin
13.09.2017
14:46:05
ну и попробуй

похвастаешься

Evgeniy
13.09.2017
14:46:35
Maxim
13.09.2017
14:58:57
@beowulfenator чем вложенный запрос лучше? разве они быстрей чем один джойн?

Konstantin
13.09.2017
14:59:19
смотря какой джоин и смотря какой запрос

Maxim
13.09.2017
15:00:38
не в случае когда 2000 к 7000 джойнятся, а когда посты юзера доставать

Konstantin
13.09.2017
15:02:00
отложим вложенный запрос :)

у тебя есть таблица с юзерами и таблица с их постами

если тебе надо запросить юзеров с их постами...

Maxim
13.09.2017
15:02:30
а у постов коменты с юзерами, теги

Konstantin
13.09.2017
15:02:45
о, и с комментариями!

смотри

Google
Konstantin
13.09.2017
15:03:07
у тебя 100 юзеров, у каждог по 10 постов, а в каждом посте по 5 комментариев

если запросить все с двумя джоинами, то result set будет содержать сколько строчек?

5000

и вот получается, что содержимое колонок каждого юзера повторилось по 500 раз

памяти у сервера отожралось немало

именно поэтому в yii2 такую фигню свернули, а with() сделает три запроса: первый получит 100 юзеров, второй получит 1000 постов, а третий получит 5000 комментариев

Admin
ERROR: S client not available

Konstantin
13.09.2017
15:06:17
вложенный запрос или не вложенный тут не так важно, вопрос скорее в том, что запросов несколько, а не один

как-то так

Maxim
13.09.2017
15:08:28
я вообще думал когда запросов несколько - это не скорее. И не понимаю чем with() в твоем описании лучше чем joinWith, если в первом случае мы сделали 1 запрос и получили 5000 строк, а во втором 3 запроса и 6100 строк

gud3
13.09.2017
15:20:42
кто-то может обьяснить почему так? https://github.com/yiisoft/yii2/issues/14754

Konstantin
13.09.2017
19:07:14
в php волшебные массивы, которым может позавидовать любой другой язык :)

фигня в том, что массивы в php сохраняют порядок даже для символьных ключей

поэтому $myarray = ['a' => 1, 'b' => 2] - это совсем не то же самое, что $myarray = ['b' => 2, 'a' => 1]

там надо поменять их порядок, чтобы в массиве authenticator непременно шел за corsFilter

потому что где-то в коде есть foreach, в который authenticator должен поступить первым

то, что ты делаешь в контроллере - это не редактирование элементов

смена порядка записей в массиве делается слегка костыльно, ты сперва убиваешь запись authenticator, а затем добавляешь ее снова, но она добавляется в конец

Google
Konstantin
13.09.2017
19:07:15
как-то так

Maxim
13.09.2017
19:24:27
gud3 поставили исправление к 2.0.15)))

gud3
13.09.2017
19:25:13
Maxim
13.09.2017
19:26:17
http://joxi.ru/gmv1bwoTxMOe6r

К версии 2.0.15 поправят

gud3
13.09.2017
19:26:45
как-то так
ничего себе, сейчас буду проверять видимо я чего-то не знаю ещё)

как-то так
спасибо за разъяснение

Matviy
14.09.2017
00:26:25
Есть где-нибуть пример фикстуры для загрузки файлов? Ну то есть, допустим, хочу для тестов картинки подгружать, и удалять, по аналогии с фикстурами, которые наполняют тестовую базу

Иван
14.09.2017
03:08:58
Есть где-нибуть пример фикстуры для загрузки файлов? Ну то есть, допустим, хочу для тестов картинки подгружать, и удалять, по аналогии с фикстурами, которые наполняют тестовую базу
Что именно ты имеешь ввиду подгружать картинку? Чтобы она была в массиве $_FILES вот так можно $I->attachFile('input[id="signupform-photo"]', 'photo.jpg'); а по окончанию скрипта картинка сама удалиться из временного хранилища, а вот если ты её сохранишь где-то, то уже ничего само оттуда не удалит.

Evgeniy
14.09.2017
06:37:22
Всем привет. Ребят, в модели ProductSearch есть $this->load($params), как понимаю, он загружает данные из адресной строки get параметры, для фильтрации данных. Решил использовать у себя в своём классе, тоже который наследуется от Product. Поставил после $this->load($params) print_r($this), но там своих get параметров не видно( Что не так делаю? Спасибо

first
14.09.2017
06:43:37
в контроллере вызове метод модели

Evgeniy
14.09.2017
06:47:27
в контроллере вызове метод модели
$productFilter = new ProductFilter(); return $productFilter->filter(Yii::$app->request->queryParams);

Nurik
14.09.2017
07:08:23
Всем привет. Дали код. yii2. Всюду страшный ActiveForm. Проблема: Повесил событие на форму на submit. Но теперь событие отрабатывает 2 раза сперва, а потом дальше по одному. форма одна.

Evgeniy
14.09.2017
07:18:08
Проблем может быть мильён
а мне случайно не поможете?)) пожалуйста)

Maxim
14.09.2017
07:18:53
Но теперь событие отрабатывает 2 раза сперва, а потом дальше по одному. форма одна. Я вообще результата не понял. Как это "сперва" и "потом дальше по одному"

Страница 581 из 1721