Сергей
Привет, там же вроде написано всё в ошбике)
Vladislav
фишка в том, что работает на localhost'е а на хостинге REG ru вот такую ошибку выдаёт
Сергей
Напиши в саппорт хостинга
Vladislav
написал уже)
Vladislav
сижу жду
👻
как вариант посмотри ip и впиши айпишник
Vladislav
через ip тоже не хотит
Vladislav
всё проблема решена, проблема была в htaccess
The Ant
во вью надо отдавать лениво
сижу думаю чот не то. когда сет отдаешь вроде лениво ок выглядит, а когда просто статью просматриваешь (отдельная страница) тогда туда отправляется сама модель, а не коллекция. хуйня какая-то же.
The Ant
там так тут так... как-то не по феншую все это дело
☕️ 𝕽𝖔𝖈𝖐𝖊𝖙𝕽𝖆𝖈𝖈𝖔𝖔𝖓
ну все норм
☕️ 𝕽𝖔𝖈𝖐𝖊𝖙𝕽𝖆𝖈𝖈𝖔𝖔𝖓
одну модель дергаешь когда вью
Vladislav
Народ. <?= $form->field($model, 'plan_id')->dropDownList(ArrayHelper::map(Plan::find()->all(), 'id', 'title')) ?> а как вывести в dropDownList не title а например title + id?
☕️ 𝕽𝖔𝖈𝖐𝖊𝖙𝕽𝖆𝖈𝖈𝖔𝖔𝖓
и ее отдаешь, не лениво
☕️ 𝕽𝖔𝖈𝖐𝖊𝖙𝕽𝖆𝖈𝖈𝖔𝖔𝖓
а когда индекс то провайдер с ленивой загрузкой
☕️ 𝕽𝖔𝖈𝖐𝖊𝖙𝕽𝖆𝖈𝖈𝖔𝖔𝖓
чего не так то?
Vladislav
вместо title функцию вставить?
👻
ArrayHelper::map( \app\models\Medicine::find()->asArray()->all(), 'id', function($model) { return $model['medicine_name'].'-'.$model['medicine_id']; } )
Timur
Товарищи, подскажите пожалуйста, как лучше устроить такую штуку: вывожу в GridView данные по телефонным звонкам, полученные в виде JSON от астериска (использую ArrayDataProvider). Вывод имеет вид "телефон, оператор, статус, время звонка и т.д...". Задача: нужно как-то выделить в GridView звонки разных операторов на один номер с разным статусом. Первое, что приходит в голову, при выводе каждой записи перебирать массив всех звонков. Но это же сильно не производительно: звонков может быть дофига, и, соответсвенно, придется дофига раз бегать по массиву...
Vladislav
ок спасибо
Сергей
Как лучше решить такую задачу? Есть страница с формой создания сущности. У сущности есть визуальный редактор, в который грузятся картинки. Картинки грузятся в папку с ID сущности. То есть при создании сущности уже сразу надо знать ID. Дополнительное условие: пользователь может одновременно в двух вкладках создавать две разные сущности.
Niko
Народ. <?= $form->field($model, 'plan_id')->dropDownList(ArrayHelper::map(Plan::find()->all(), 'id', 'title')) ?> а как вывести в dropDownList не title а например title + id?
<?= $form->field($model, 'plan_id')->dropDownList(Plan::find()->SELECT(['concat(id, \' \', title)','id'])->indexBy('id')->column()) ?>
Niko
так по идее быстрей, без лишних переборов массива, а готовый результат из БД
The Ant
$model->getPlanOptions(); нада оформить в моделе
Vladislav
тут уже битва кто круче да? =D
Niko
ну это понятно, что надо не в модели, а хотя бы в MyModelQuery такие списки запрашивать Тут главное сама суть
Сергей
создать сущность твою и потом редактировать?!
Создал, сохранил со статусом "Новая" и разрешаю редактировать новые. Все остальные сущности по различным правилам доступны определенным пользователям. Остаётся дырка: любой пользователь может смотреть, что там сейчас редактируется из новоого :)
Niko
Создал, сохранил со статусом "Новая" и разрешаю редактировать новые. Все остальные сущности по различным правилам доступны определенным пользователям. Остаётся дырка: любой пользователь может смотреть, что там сейчас редактируется из новоого :)
ты неправильно делаешь. Привяжи фотографии к сущности через ImageUploadBehavior и при сохранении сущности они сами попадут в нужную папку к своему объекту. У тебя не будет проблемы "общего" объекта И почему ты не привяжишь объект к пользователю, который его сделал
The Ant
или тебе нада именно видеть что там редактируется что-то?
The Ant
вариант2: обычный fileinput для картинок. и обертка над ним клиентская
Сергей
У меня нет проблемы с загрузкой файлов... вопрос собственно в том как лучше создавать заранее объект с ID
Niko
тебе не нужно это делать, тебе нужно создавать объект когда все данные валидны. Иначе будет куча пустышек, которые будут бесить
Niko
https://github.com/yii-dream-team/yii2-upload-behavior
Сергей
Например через tinymce
Niko
плохая затея. Я бы у тебя все свои фото хранил, которые на гугл-диск не влезают
Niko
А куда он их загружает? Ты же говорил нужен id другого объекта
Сергей
Норм затея, в сборщик мусора добавлю просто задачу на удаление старых черновиков
Niko
Например через tinymce
куда загружает? У тебя же id еще нет
👻
а че именно айди записи
👻
привяжись к юзеру и дате
Сергей
👻
намного проще ж
Сергей
А удалять как я потом эти файлы буду при удалении сущности?
👻
ну если в таком ключе да
Niko
Сразу создаю объект
а в чем тогда твой вопрос? При создании второй вкладки делай новый объект как в первый раз и возвращай новый id
The Ant
А удалять как я потом эти файлы буду при удалении сущности?
после создания поста у картинки пропишется ид поста )
Сергей
Не нравилось, что можно прописать другой ID и если кто-то создаёт сущность с таким ID - можно перехватить
The Ant
помнится в дле такой финт ушами был
Niko
Тогда никто ничего никуда не припишет
Сергей
У меня сложнее доступ, чем просто сущность к пользователю.
Сергей
Решил в итоге забить на эту дырку... Думаю никто никогда ей не воспользуется, да и сомнительнаяя она.... пользы то никакой
The Ant
дак делай на фронте да и все. нахер эти кастыли сраные. любой клиентский редактор фоток умеет работать с файлинпутом
The Ant
или жской закидывай нужную фотку в него из этого файлинпута
The Ant
самый безгеморойный вариант потом если чота менять\добавлять на бекенде
The Ant
Да это тот ещё геморой, проще объект заранее создать
никакой не геморой. геморой будет когда ты решишь поменять ченить в своей системе хитровыебаной )
Сергей
Наоборот, с вариантом когда ID заранее известен - никаких проблем нет в дальнейших доработка
The Ant
Сергей
В общем как-то так вышло: http://joxi.net/LVm6ZlUxNDlYmZ.jpg В контроллере создам эту модель, а в форме добавлю Hidden Input с id = $model->interaction->id;
Абдула
Yii::$app->db->cache() - какой параметр передавать, чтобы он хранил кэш только пока текущий запрос не завершится?
Niko
Кажется никакой. Там есть срок хранения в параметрах, но как ты его предвидишь до завершения запроса? А так можешь вначале делать set, а в каком-нибудь afterAction удалять
Niko
https://yiiframework.com.ua/ru/doc/guide/2/caching-data/#cache-expiration
Абдула
И еще.
Абдула
Почему он жестко кэширует. Если в БД данные изменились он не должен был поменять результат?
Абдула
ок
Vladislav
Я сделал CRUD для User и почему-то он не хочет изменять данные в update