@yii2ru

Страница 1404 из 1721
Максим
21.06.2018
12:13:17
прям все щипцами тянуть надо) как будто нам надо это починить

Ad.x ??
21.06.2018
12:13:30
и юзер модели

Vladislav
21.06.2018
12:14:45
он длинный особенно модель user так что тут чат просто взорвётся =D

Google
Ad.x ??
21.06.2018
12:14:55
есть pastebin

Ad.x ??
21.06.2018
12:15:45
ну вообще если серч унаследована от юзер модели, то не удивительно

Ad.x ??
21.06.2018
12:16:24
запускается валидация при каждом запросе ) а там генерация какой-то хуйни

Vladislav
21.06.2018
12:16:54
запускается валидация при каждом запросе ) а там генерация какой-то хуйни
тоесть хочешь сказать что валидация запускается даже при find()?

Максим
21.06.2018
12:17:00
запускается валидация при каждом запросе ) а там генерация какой-то хуйни
генерацию того auth keyнадо вызывать наверное при регистрации или логине, а не в beforeValidate

там валидация при каждом запросе

Ad.x ??
21.06.2018
12:17:20
тоесть хочешь сказать что валидация запускается даже при find()?
ну в серч загружаются данные же, и они там валидируются

Максим
21.06.2018
12:17:53
Ad.x ??
21.06.2018
12:17:53
давай код короче хер проссышь чо там не так

Максим
21.06.2018
12:18:07
Google
Vladislav
21.06.2018
12:18:42
генерацию того auth keyнадо вызывать наверное при регистрации или логине, а не в beforeValidate
я хотел запихнуть в модель перед сохранением чтобы каждый раз не писать одно и тоже в контроллерах

Максим
21.06.2018
12:19:45
я хотел запихнуть в модель перед сохранением чтобы каждый раз не писать одно и тоже в контроллерах
ну в beforeValidate такое не надо совать. вот чувак к примеру авторизуется, и при каждой авторизации у него этот ключ меняется. а если ты ему на почту его выслал, он после этого авторизовался несколько раз, ключ сменился, и он не сможет зайти по auth key

Ad.x ??
21.06.2018
12:19:48
я хотел запихнуть в модель перед сохранением чтобы каждый раз не писать одно и тоже в контроллерах
ну он каждый раз и будет заново генерировать при сохранении, оно надо?

при валидации* пардон

Максим
21.06.2018
12:20:15
не говоря уже о том, что в круде ты при каждой фильтрации ему ключ меняешь

генерь его при регистрации один раз и все

ну и потом если надо будет, сделаешь перегенерацию по запросу

Vladislav
21.06.2018
12:21:24
ок тогда придйтся совать в контроллы =D

короче спасибо)

Евгений
21.06.2018
12:33:18
Кто работал с dav файлами через ffmpeg?

Андрей
21.06.2018
12:36:24
Подскажите, AuthKey у юзера используется только когда авторизация через куки работает?

или я не правильно понял?

Nuriddin
21.06.2018
12:50:56
Я его использовал для токенов на рест апи

Vladimir
21.06.2018
12:51:21
А насколько сложные проекты можно писать на Yii? Или всё-таки для чего-то крупного лучше использовать что-то типа Symfony?

Андрей
21.06.2018
12:55:29
Я его использовал для токенов на рест апи
а как именно? Вот сейчас как раз занимаюсь авторизацией через апишку

Я его использовал для токенов на рест апи
я так понял туда удобно access_token подставлять?

Ivan
21.06.2018
13:13:16
Ad.x ??
21.06.2018
13:13:36
java spring? Или шарп?
да щас на любой вкус есть

Google
Pavlo
21.06.2018
13:55:25
hi

Алексей
21.06.2018
13:59:13
Hi

Антон
21.06.2018
14:19:02
Кто-нибудь строил подобный запрос через AR? SELECT t.* FROM t LEFT JOIN t2 ON t2.foreign_id = t.id AND t2.field = 1 LEFT JOIN t2 ON t2.foreign_id = t.id AND t2.field = 2

Максим
21.06.2018
14:21:18
LEFT JOIN t2 as t21 ON t21.foreign_id = t.id AND t21.field = 1 LEFT JOIN t2 as t22 ON t22.foreign_id = t.id AND t22.field = 2

Nuriddin
21.06.2018
14:22:21
а как именно? Вот сейчас как раз занимаюсь авторизацией через апишку
во время аутентификации генерировал токен и написал на AuthKey. В остальных апишках клиент должен отправить этот токен на header. И можете найти какой это юзер.

Максим
21.06.2018
14:22:23
за такие названия конечно по рукам давать надо надо, но для примера сгодятся

Санжар
21.06.2018
14:24:24
Как правильно из фронтенда грузить картинку в бэкенд? Проблема в url'ах, даже если юзаю алиасы, выходит что-то в духе: frontend.site.ru/backend.site.ru/file/storage/upload т.е url фронтенда всегда сохраняется (потому что гружу ajax'ом картинку из фронта). Как решить или вообще иначе грузить нужно?

Антон
21.06.2018
14:25:11
юзай алиасы
я пока решил через отношения так (хз, норм ли): public function getT() { return $this->hasOne(T2::class, ['id' => 'foreign_id']) ->onCondition([T2::tableName() . '.field' => 1]); } public function getT2() { return $this->hasOne(T2::class, ['id' => 'foreign_id']) ->onCondition([T2::tableName() . '.field' => 2]); }

Санжар
21.06.2018
14:26:19
покажи как и где юзаешь алиасы
Вот, так выглядит форма: <?= $form->field($feedback, 'thumbnail')->widget( Upload::class, [ 'url' => [Yii::getAlias('@backendUrl') . '/file/storage/upload'], 'maxFileSize' => 5000000, // 5 MiB ]); ?> я взял этот кусок с формой из бэкенда (там это поле для ajax загрузки картинки).

Антон
21.06.2018
14:26:21
с алиасами так ``` public function getT21() { return $this->hasOne(T::class, ['id' => 'foreign_id']) ->alias('t21') ->onCondition(['t21.field' => 1]); } public function getT22() { return $this->hasOne(T2::class, ['id' => 'foreign_id']) ->alias('t22') ->onCondition(['t22.field' => 2]); } ```

Constantin
21.06.2018
14:26:52
общий вопрос по похапе: какая либа умеет в обработку не только обычных, приходящих с АОН номеров, но и внутренних трёхзначных и городских шести (семи) значных?

Constantin
21.06.2018
14:27:15
тыкаю libphonenumber, но он чот обсераеццо

Максим
21.06.2018
14:27:18
Вот, так выглядит форма: <?= $form->field($feedback, 'thumbnail')->widget( Upload::class, [ 'url' => [Yii::getAlias('@backendUrl') . '/file/storage/upload'], 'maxFileSize' => 5000000, // 5 MiB ]); ?> я взял этот кусок с формой из бэкенда (там это поле для ajax загрузки картинки).
с фронта у тебя нет доступа к файловой системе. Аяксом ты можешь загрузить только на экшен контроллера фронта по идее, а там уже сохраняй файл в нужную папку бекенда

Google
Максим
21.06.2018
14:30:08
там в модели метод upload, в нем указываешь путь. там и используй алиас бекенда

с алиасами так ``` public function getT21() { return $this->hasOne(T::class, ['id' => 'foreign_id']) ->alias('t21') ->onCondition(['t21.field' => 1]); } public function getT22() { return $this->hasOne(T2::class, ['id' => 'foreign_id']) ->alias('t22') ->onCondition(['t22.field' => 2]); } ```
ну тут по сути алиасы они и не нужны, если будешь через связную модель данные получать. А вот если в одном запросе и надо будет связанные данные использовать в where, например, без алиасов не обойтись.

Антон
21.06.2018
14:31:18
https://yiiframework.com.ua/ru/doc/guide/2/input-file-upload/#wiring-up
лучше уж на офф. сайт ссылку https://www.yiiframework.com/doc/guide/2.0/ru/input-file-upload#wiring-up

Максим
21.06.2018
14:31:41
Антон
21.06.2018
14:32:00
гугл мне тот сайт постоянно подсовывает)
офф. сайт недавно русскую локализацию добавил)

мне, кстати, тоже чаще тот выпадает

Максим
21.06.2018
14:34:46
Кто-нибудь строил подобный запрос через AR? SELECT t.* FROM t LEFT JOIN t2 ON t2.foreign_id = t.id AND t2.field = 1 LEFT JOIN t2 ON t2.foreign_id = t.id AND t2.field = 2
только у тебя в первом запросе дважды таблица t2 джойнится, а в методах для связей T1 и T2) где то неправильная инфа

Admin
ERROR: S client not available

Санжар
21.06.2018
14:36:53
там в модели метод upload, в нем указываешь путь. там и используй алиас бекенда
не могу понять нужно написать метод upload в модели? в экшене у меня пока так: if ($feedback->load(Yii::$app->request->post()) && $feedback->save()) { return $this->redirect('front'); }

Максим
21.06.2018
14:37:51
не могу понять нужно написать метод upload в модели? в экшене у меня пока так: if ($feedback->load(Yii::$app->request->post()) && $feedback->save()) { return $this->redirect('front'); }
да, надо. этот метод и сохранит картинку. там по ссылке весь цикл, от вьюхи до модели через контроллер, показан вариант, как можно сохранить файл по нужному пути

Вот, так выглядит форма: <?= $form->field($feedback, 'thumbnail')->widget( Upload::class, [ 'url' => [Yii::getAlias('@backendUrl') . '/file/storage/upload'], 'maxFileSize' => 5000000, // 5 MiB ]); ?> я взял этот кусок с формой из бэкенда (там это поле для ajax загрузки картинки).
тут же в параметре url ты указываешь экшен, который файл сохранит. может ты конечно метод save переопределил и там загрузку сделал, я не знаю

Фёдор
21.06.2018
14:46:26
Привет. Подскажите с определением errorHandler в Bootstrap расширения... Пишу расширение-админку, стандартные конфиги применяю через Bootstrap, где в попытках навесить свой errorHandler вызываю: $app->setComponents([ //... Всякие разные компоненты и все работают 'errorHandler' => [ 'class' => 'yii\web\ErrorHandler', 'errorAction' => 'admin/error/index', ], ]); Все другие компоненты нормально применяются, а errorHandler не хочет, вижу вместо своей страницы ошибки стандартную серверную. Если вручную захожу на /backend/admin/error/index, то страница открывается. Проблема только с подхватыванием ошибкой этой страницы

Максим
21.06.2018
14:46:56
А то что в actionUpload обязательно отдельным экшеном делать? или можно там же, где идет ajax запрос
хотя хз на самом деле) там может валидация не пройти, если отдельно будешь отправлять форму и файл

вот если просто использовать input type file, а не виджет, то может и проканает общий экшен

Фёдор
21.06.2018
14:49:17
конфиг только к бэкенду применяю

Google
NVlad
21.06.2018
14:50:04
Санжар
21.06.2018
14:51:31
тут же в параметре url ты указываешь экшен, который файл сохранит. может ты конечно метод save переопределил и там загрузку сделал, я не знаю
не работает указал url такой: site/upload по идее должен был выполниться actionUpload в SiteController (правда дело мб в том, что на этот экшен делается post ajax запрос?)

Максим
21.06.2018
14:51:38
а так не сработает? ``` SELECT t.* FROM t LEFT JOIN t2 ON t2.foreign_id = t.id AND (t2.field IN (1, 2)) ```
там видимо надо отдельно таблицы джойнить. например, таблица сообщений, отдельно отправитель, отдельно получатель. вроде таблица одна, но надо отдельно

Антон
21.06.2018
14:51:55
мне нужно получить таблицу вида t.id | t2.id1 | t2.id2 1 | 10 | 20 в вашем случае я получу таблицу t1.id | t2.id 1 | 10 1 | 20

Антон
21.06.2018
14:53:53
на самом деле, через Query это дело будет написать гораздо проще. может и не стоит заморачиваться на ActiveQuery

Фёдор
21.06.2018
14:54:20
может он на фронтендовый экшен пытается достучаться? или это конфиг бекенда?
Как уже писал, применяю конфиг только для бэкенд-приложения, у него еще настроен request: 'baseUrl' => '/backend' Может тут не справляется?

Антон
21.06.2018
14:54:22
че за жесть
например, таблица сообщений, отдельно отправитель, отдельно получатель. вроде таблица одна, но надо отдельно

Ad.x ??
21.06.2018
14:56:29
SELECT t.* FROM t LEFT JOIN t2 ON t2.foreign_id = t.id WHERE t2.field = 1 OR t2.field = 2 не?

Антон
21.06.2018
14:57:17
мне нужно получить таблицу вида t.id | t2.id1 | t2.id2 1 | 10 | 20 в вашем случае я получу таблицу t1.id | t2.id 1 | 10 1 | 20

Максим
21.06.2018
14:57:44
SELECT t.* FROM t LEFT JOIN t2 ON t2.foreign_id = t.id WHERE t2.field = 1 OR t2.field = 2 не?
надо одну таблицу дважды заджойнить, в первом случае с одним условием, во втором - с другим

Максим
21.06.2018
14:58:05
например, от лица двух разных юзеров, чтобы этими юзерами потом можно было оперировать

Ad.x ??
21.06.2018
14:58:40
ниче не понял ну да ладно

Максим
21.06.2018
14:58:49
зачем?
ну хз зачем) может такое пригодится. например, я делал для переписки юзеров, тикеты типа. получаю сообщения, и джойню двух разных юзеров в одном запросе. чтобы вывести имя каждого, аватарку, например

Ad.x ??
21.06.2018
14:58:52
но выглядит как какая-то дичь

Максим
21.06.2018
14:59:45
но выглядит как какая-то дичь
мне не нравится только это наименование таблиц t1 t2) непонятно что к чему, были бы осмысленные названия - было бы лучше. даже если это пример

Антон
21.06.2018
15:00:13
да время тратить на придумывание названий не хотел)

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