Павел
Павел
Или я тебя не так понял?
who are you
Что ? Форма обновления данных
Павел
Что за квадратики
who are you
Чекбоксы
The Ant
Павел
Блин он не может просто установить чекбокс чтоли?
who are you
Не могу вывести уже прочеканые
who are you
При обновлении
Павел
Только при обновлении?
Павел
Ты типа установил чекбокс, засабмитил форму, а она обновляется со старыми данными потом?
who are you
Я могу вывести список категорий в виде чекбоксы. Но при обновлении какого то товара мне надо на соответствующей категории прочекано чтоб было. Я пихаю массив прочеканых и все равно фигу
who are you
Там вообще не понимаю первый параметр у чекбокслист какой то нэйм стринг
The Ant
давай код
who are you
Телефон 😶
The Ant
ну если коротко то in_array текущий элемент из списка запощщеных и флажок ставить
The Ant
чобы более конкретно подсказать нада код видеть. м.б. это делать в шаблоне, м.б. покатит в форме
Alexander
подскажите, в каком месте у контроллера лучше всего задать \Yii::$app->response->format ?
у меня два варианта, пихать это в каждый action, либо создать before-action и в него засунуть. Но я думаю, что есть какой-то более правильный способ. Нет?
The Ant
о, кстати. задам вопрос. ктонить через евент пробовал навесить реляцию на ар сущность? ;D
Yan
Kirill
Steel
who are you
who are you
Херня какая то. Чек бокс лист три метода в йии2
Алексей
прям пример "как не надо делать во вьюхах"
who are you
И у каждого свои параметры
Vladimir
так каждый по сути надстройка над другим
Алексей
какие параметры есть, тот чекбокс и бери :)
who are you
И нет метода из этих трёх где можно указать модель атрибут массив элементов и массив чекнутых элементов
Алексей
а зачем тебе массив чекнутых, если они в модели-атребуте?
who are you
Модель и атрибут это разные параметры
Алексей
ну так оно там внутри потом берёт данные из атребута модели...
Алексей
кстати Html::checkboxList()...
who are you
Это ты про какой вариант исполнения? Их три😁
Алексей
field()->checkbox() не помню :(
who are you
who are you
who are you
Ну дык этот вариант без модели
The Ant
The Ant
для экономии памяти:
Directory::find()
->select('name')
->indexBy('id')
->column();
Ceyhun
какой best practice при реализации добавления поста в мультиязычных приложениях?
Ceyhun
Лучше добавлять каждый язык по отдельности (в бэкенде)? или все языки сразу в одном экшне?
The Ant
The Ant
для перевода статей существует несколько вариантов как это организовать. Но все из них так или иначе будут отталкиваться от выбранного языка и данных в бд
The Ant
выбранный язык в уии есть в конфиге ('language')
The Ant
остается дело за архитектурой в бд. экшен в контроллере будет 1
who are you
Алексей
Так?
ток оно в форме работать не будет :) я так понимаю, что речь идёт о дефолтном значении? Полставляй его в ините модели...
mrG1K
Подскажите а может быть есть готовое поведение для кодирования Punycode и обратного декодирования )
who are you
Что то знакомое пуникод
Dmytro
idn_to_utf8
Dmytro
http://php.net/manual/ru/function.idn-to-utf8.php
who are you
Ему нужно поведение
who are you
Не гоже плодить одинаковые методы в моделях. Гоже одинаковые поведения 😁
Niko
Привет! Меня в последнее время PhpStorm 2017.3.4 из всех серверов выкидывает, даже на локальном сервере ошибка
Дайте кто-нибудь pls рабочий сервер или ключ
Или посоветуйте, как еще можно его активировать
Erkin
Niko
Niko
поставил EAP
☕️ 𝕽𝖔𝖈𝖐𝖊𝖙𝕽𝖆𝖈𝖈𝖔𝖔𝖓
поставил EAP
Во! Пользуйся как нищеброд, хороший вариант) и ломать ничего не надо и сообществу помогаешь
Niko
☕️ 𝕽𝖔𝖈𝖐𝖊𝖙𝕽𝖆𝖈𝖈𝖔𝖔𝖓
Хотя странно что веб не приносит достаточно средств для покупки) но они хорошую альтернативу предложили и продукты достойные)
I
добрый день коллеги. пользуюсь $client->getDirtyAttributes(). Проблема в том что есть список полей (11 из 30 ) которые он все выдает как отредактированные даже если не редактироват. В чем может быть проблема.?
The Ant
Макс
Всем привет.
Поскажите пожалуйста как составить запрос к Mysql для фильтрации по последнему статусу.
Есть две таблицы: "ссылки" и "статусы", у одной ссылки может быть много статусов. В выборке нам важно учитывать последний (актуальный) статус
Составил следующее:
$query = SeolinkLink::find()->addSelect([SeolinkLinkStatus::tableName().'.*', SeolinkLink::tableName().'.*']);
$query->leftJoin(SeolinkLinkStatus::tableName(), SeolinkLinkStatus::tableName().'.link_id = (SELECT link_id
FROM n_seolink_link_status
WHERE n_seolink_link_status.link_id = n_seolink_link.link_id
ORDER BY n_seolink_link_status.status_id
DESC LIMIT 1)');
$query->where([SeolinkLinkStatus::tableName().'.status' => $statuses]);
$query->limit($limit);
Но условие отрабатывает по всем "статусам"
Kirill
Одним запросом не сделать
Макс
нужен подзапрос в select?
Kirill
Да
Kirill
Селект с ордеров по ацдишникам статусов
Kirill
Потом от туда то что надо
Kirill
С ордером *
The Ant
Макс
Кирилл, я про это думал и даже пытался построить такой запрос. В подзапросе же нужно указать where. но как сцепить основной запрос с подзапросом.
вроде стандартный кейс но почему-то не могу осилить...
The Ant
Steel
А помогите советом по теории behaviors?
Есть контроллеры:
/users/USERID/profile
/users/USERID/stats
/users/USERID/photos
итд
всё это разные контроллеры. Но очевидно что все они первыми же строчками делают одно и то же действие — смотрят на USERID, забирают юзера из базы, проверяют его наличие, статус профайла, его открытость итд. но вот ещё надо чтобы behavior сохранял данные полученного юзера для контроллера и как-то удобно к ним получать доступ
я оформил это поведение как UserProfileBehavior extends yii\base\ActionFilter и первая часть (проверки) всё работает прекрасно.
если что не так с юзером — рендерю принудительно страницы ошибок, всё красиво и работает
А вот как поведению сохранять модель юзера, чтобы в контроллере как-то просто к нему обращаться (типа $this->viewUser->field_name_or_method() ) не нашел ни в документациях, ни в примерах самого ядра yii
какой тут бест практис тксказать? :)
погуглив нашел только адский обмен через Yii::$app->params (в поведении ставить, а в контроллере читать), но это какая-то дичь, а как правильно? :)
The Ant
А помогите советом по теории behaviors?
Есть контроллеры:
/users/USERID/profile
/users/USERID/stats
/users/USERID/photos
итд
всё это разные контроллеры. Но очевидно что все они первыми же строчками делают одно и то же действие — смотрят на USERID, забирают юзера из базы, проверяют его наличие, статус профайла, его открытость итд. но вот ещё надо чтобы behavior сохранял данные полученного юзера для контроллера и как-то удобно к ним получать доступ
я оформил это поведение как UserProfileBehavior extends yii\base\ActionFilter и первая часть (проверки) всё работает прекрасно.
если что не так с юзером — рендерю принудительно страницы ошибок, всё красиво и работает
А вот как поведению сохранять модель юзера, чтобы в контроллере как-то просто к нему обращаться (типа $this->viewUser->field_name_or_method() ) не нашел ни в документациях, ни в примерах самого ядра yii
какой тут бест практис тксказать? :)
погуглив нашел только адский обмен через Yii::$app->params (в поведении ставить, а в контроллере читать), но это какая-то дичь, а как правильно? :)
бест практис - не использовать бихейворы
Kirill
сделать
Селект фром (селект) считаешь за один запрос?
Kirill
Я так понял есть таблица с историей статусов?
Макс
SELECT n_seolink_link_status.*, n_seolink_link.* FROM n_seolink_link LEFT JOIN n_seolink_link_status ON n_seolink_link_status.link_id = (SELECT link_id FROM n_seolink_link_status WHERE n_seolink_link_status.link_id = n_seolink_link.link_id ORDER BY n_seolink_link_status.status_id DESC LIMIT 1) WHERE n_seolink_link_status.status IN ('new', 'reallocation') LIMIT 3
The Ant