maestro07: если есть API, то почитайте про select2. Он из коробки, с правильной настройкой, способен подгрузить данные и при помощи переданной ему функции сформировать правильный массив для вывода списка вариантов.
Boris Korobkov: смысл от этого не меняется. Просто чаще это используется для js.
Делать лишний запрос единожды (все css и js кэшируются браузером) более эффективно, чем каждый раз создавать css на стороне клиента. Или я где-то прогулял тему кэширования барузером?
NeveR3d: Одна кнопка: <a href="#modal1">Модальное окно 1</a>
Одно модальное окно: <div id="modal1">...</div>
При нажатии на одну кнопку, всплывет только указанное в ссылке модальное окно. Аналогично и со вторым модальным окном. При чем тут обработка формы?
Мой пример лишь показывает Вам, где искать возможные способы решения нескольких модальных окон. Это не готовый фикс, решающий Вашу проблему. Как не крути, Вам придется включиться и понять принцип работы. Вам придется научиться читать код и вносить в него правки. Для готового решения, Вам нужно читать статьи выше, которые указал Артур выше. Или взять готовое решение, например colorbox или что то аналогичное.
Тимофей Михайлов: Вырезал, потому что нужно использовать блоки кода, а не вставлять как текст.
После Вашего преобразования, в myArr хранится как раз СТРОКА. Именно так интерпретирует PHP Вашу запись. После этого преобразования, с "объектом", который у Вас получился, можно работать только в JS. Или парсить обратно или не преобразовывать в строку именное этот массив.
Fortop: Видимо он делает в разных местах. И тут мы возвращаемся к вопросу подмены переменной.
$e = [];
>>> js;
>>> console,log(print_r($e));
$e = "";
print_r($e)
Хуршед Абдужалил: на самом деле проще, чем кажется. Нужно передать две функции:
1) Сбор статистики - map:
function () {
emit(this.name.substring(0, 1) 1);
};
2) Склеивание статистики - reduce:
function (key, values) {
var sum = 0;
for (var i in values) {
sum += values[i];
}
return sum;
}
И на выходе получишь нужную аналитику.
Если опять не будет проблем с русской кодировкой...
Хуршед Абдужалил: ответ кроется в эксперименте на чистой монге. Скорее всего ответ на запрос получается не совсем тем, что планируется и дерево с точки зрения php является поломанным. Можно попробовать еще какую нибудь стадию добавить в агрегацию, например еще один match.
Дмитрий Ким: это понятно Вам, а не анализатору. Для него parent является только непосредственно родитель. А у Вас нет родителя для трейта. У Вас примесь, которая не должна опираться на контекст. Поэтому Вы либо игнорируете данный контекст, либо реализуете иначе, через промежуточную модель, через любой хелпер, через реализацию метода только в нужной модели с опором на контекст модели.
Хуршед Абдужалил: Проблема с деревом, которое было получено в результате запроса. Я так понимаю, что обертки для yii2 неудачно реализуют алгоритмы обработки запросов, отличных от простого поиска. Попробуйте тоже самое реализовать на чистом Mongo. Ответ от запроса агрегации всегда массив. А в случае с агрегацией это еще и массив с 2 элементами. Статус выполнения и результат. И toArray вам не нужен, там один ответ. И current применять нужно к вложенному элементу result (точно уже не помню как он называется).
Хуршед Абдужалил: К меня вроде проблем пока не наблюдалось. Но все возможно. Пробуйте более удобные способы общения с сервером. Например MongoChef (Studio3T)
Хуршед Абдужалил: Смотрите исходных код. В данном случае очень поможет. К сожалению я не знаю, что вы используете за библиотеку, что бы подсказать подробнее.
Один из вариантов, на функцию all не привязана выборка данных, т.е. является заглушкой. В общем не доработаны все тонкости работы с базой и позволяет использовать только базовый набор действий.