Найдено 26 результатов

imyapolzovatelya
2019.05.14, 12:07
Форум: Общие вопросы (Yii 2.x)
Тема: AR via table как отключить eagerLoading?
Ответы: 4
Просмотры: 1122

Re: AR via table как отключить eagerLoading?

Ну вот смотрите. Есть таблица friends: user_id_1 | user_id_2 -------------------------- 1 | 555 1 | 777 1 | 888 и users: id | last_visit_year ------------------- 555 | 2011 777 | 2017 888 | 2019 Я хочу вывести только 2-х друзей, отсортированных по дате последнего посещений, по last_visit_year. То ес...
imyapolzovatelya
2019.05.14, 01:24
Форум: Общие вопросы (Yii 2.x)
Тема: AR via table как отключить eagerLoading?
Ответы: 4
Просмотры: 1122

Re: AR via table как отключить eagerLoading?

$user->getFriendsIAdded()->orderBy('last_visit')->all() А если я захочу вывести только 2х друзей? Тогда код сделает такие запросы SELECT * FROM `friend` WHERE `user_id_1`= 7 limit 2 ну а потом SELECT * FROM `user` WHERE `id` IN ('2343', '1') order by last_visit Второй запрос сортирует найденных фре...
imyapolzovatelya
2019.05.13, 20:45
Форум: Общие вопросы (Yii 2.x)
Тема: AR via table как отключить eagerLoading?
Ответы: 4
Просмотры: 1122

AR via table как отключить eagerLoading?

Всем привет, нахожу пользователя: $user = User::findOne(7); Вывожу тех, кто добавил его в друзья: $friends = $user->friendsIAdded(); Код relation такой: public function getFriendsIAdded() { return $this->hasMany(User::class, ['id' => 'user_id_2'])->viaTable('friend', ['user_id_1' => 'id']); } Выполн...
imyapolzovatelya
2019.01.18, 16:17
Форум: Обо всем
Тема: Борьба со спамом
Ответы: 1
Просмотры: 1545

Борьба со спамом

Недавно на моем ресурсе с посещаемостью 3500 чел/сутки, начали регаться спамеры, и, стали отправлять спам посредством личных сообщений и комментариев к постам других пользователям. Всего у меня 40к пользователей, постов 200к. Регистрируются явно не спам боты, так как на моем сайте стоит на форме рег...
imyapolzovatelya
2018.10.20, 16:35
Форум: Общие вопросы (Yii 2.x)
Тема: Почему yii делает 2 запроса, хотя можно обойтись одним?
Ответы: 2
Просмотры: 1301

Почему yii делает 2 запроса, хотя можно обойтись одним?

Вот такой запрос $query = User::find()->innerJoinWith('profile')->orderBy('scores')->all(); Делает два запроса 1) SELECT `user`.* FROM `user` INNER JOIN `profile` ON `user`.`id` = `profile`.`user_id` ORDER BY `scores` 2) SELECT * FROM `profile` WHERE `user_id` IN (39740, 39734, ...) Вопрос: Можно ли...
imyapolzovatelya
2018.10.04, 10:31
Форум: Новости, события, встречи
Тема: Yii 2.1 не будет, встречайте Yii 3.0
Ответы: 29
Просмотры: 18618

Re: Yii 2.1 не будет, встречайте Yii 3.0

формы будут на 4ом бутстрапе?
imyapolzovatelya
2018.10.03, 23:10
Форум: Общие вопросы (Yii 2.x)
Тема: Форматирование строки без yii::t[решено]
Ответы: 1
Просмотры: 687

Re: Форматирование строки без yii::t[решено]

Вот так можно
\Yii::$app->I18n->format("{n, plural, one{# год} few{# года} many{# лет} other{# лет}}", ['n' => $age], \Yii::$app->language);
imyapolzovatelya
2018.10.03, 22:32
Форум: Общие вопросы (Yii 2.x)
Тема: Форматирование строки без yii::t[решено]
Ответы: 1
Просмотры: 687

Форматирование строки без yii::t[решено]

Код: Выделить всё

echo \Yii::t('app', 'There {n, plural, =0{are no cats} =1{is one cat} other{are # cats}}!', array(
    'n' => 0,
));
Можно ли как то вывести эту строку без yii:t()? Вроде как то так \Yii::$app->formatter ... ?
imyapolzovatelya
2018.08.25, 12:35
Форум: Общие вопросы (Yii 2.x)
Тема: вот такая ajax пагинация
Ответы: 0
Просмотры: 764

вот такая ajax пагинация

Есть у меня сайт, сейчас делаю новую версию... И захотелось внедрить pjax на сайт, но он мне не нравится тем, что он тупо делает запрос на эту же страницу, парсит и возвращает, что нужно. То есть, с точки зрения производительности выгоды особой нет. Поэтому придумал (или свелосипедил) такой метод. С...
imyapolzovatelya
2018.08.20, 20:17
Форум: Общие вопросы (Yii 2.x)
Тема: current url + array in get paramater
Ответы: 1
Просмотры: 751

current url + array in get paramater

Над статьями у меня ссылки для фильтра по категориям, типа <a href="Url::current(['category_id[]' => 1])" >Категория 1</a> <a href="Url::current(['category_id[]' => 2])" >Категория 2</a> <a href="Url::current(['category_id[]' => 3])" >Категория 3</a> и тд Можно выбирать...
imyapolzovatelya
2018.08.11, 03:33
Форум: Общие вопросы (Yii 2.x)
Тема: передать объект query через ajax
Ответы: 2
Просмотры: 970

Re: передать объект query через ajax

разобрался. Надо было serialize использовать, а не json_encode().
Объект пришел целенький, рабочий :)
imyapolzovatelya
2018.08.10, 22:31
Форум: Общие вопросы (Yii 2.x)
Тема: передать объект query через ajax
Ответы: 2
Просмотры: 970

передать объект query через ajax

Отправляю закодированный в json_decode() объект query (через аякс). в контроллере код такой: public function actionTest{ $query = json_decode($_POST['encoded_query']); print_r($query); } print_r выдает: stdClass Object ( [sql] => [on] => [joinWith] => [select] => [selectOption] => [distinct] => [fro...
imyapolzovatelya
2018.07.19, 16:09
Форум: Общие вопросы (Yii 2.x)
Тема: Как работает pjax
Ответы: 6
Просмотры: 2014

Re: Как работает pjax

Например, есть статья, а под ней комменты, которые можно листать pjax-ом. Если сделается запрос на эту же страницу, то заново выполнится sql-запрос SELECT статьи, и выполнятся прочие действия, инкремент количества просмотров статьи - а все это мне не нужно. Было бы здорово, если бы выполнилось тольк...
imyapolzovatelya
2018.07.19, 12:42
Форум: Общие вопросы (Yii 2.x)
Тема: Как работает pjax
Ответы: 6
Просмотры: 2014

Как работает pjax

Правильно ли понял, что когда я нажму на "Страница 2" в ListView, обернутый в Pjax, то произойдет следующее: 1) Идет ajax-запрос к текущему action с новым GET-параметром page = 2 2) Pjax получает ВСЮ текущуя страницу <html>....</html>, в том числе скрипты и стили. 3) Происходит парсинг это...
imyapolzovatelya
2018.06.19, 17:25
Форум: Общие вопросы (Yii 2.x)
Тема: pjax - дополнительная выборка
Ответы: 2
Просмотры: 795

pjax - дополнительная выборка

Добрый вечер. Использую ActiveDataProvider+ListView для вывода записей. Недавно подключил pjax. Пагинация работает. Теперь я хочу добавить на страницу две ссылки: "показать активные", "показать неактивные". Когда нажму "показать активные", в query должен добавиться andW...
imyapolzovatelya
2018.05.18, 16:57
Форум: Общие вопросы (Yii 2.x)
Тема: html представления свойств
Ответы: 3
Просмотры: 1410

html представления свойств

Всем привет Например, во многих страницах сайта статус должен выводится так: if($model->status == \app\models\Post::STATUS_ONLINE) { echo '<label class="text-primary">Online</label>'; } else { echo '<label class="text-danger">Offline</label>'; } Естественно, это лучше сделать в к...
imyapolzovatelya
2018.03.22, 22:09
Форум: Общие вопросы (Yii 2.x)
Тема: Not Found (#404): Unable to find debug data tagged with
Ответы: 4
Просмотры: 3440

Not Found (#404): Unable to find debug data tagged with

Недавно обновил версию php до 7, и yii до 2.0.14 Дебажная панель слетела, ошибка внизу: Not Found (#404): Unable to find debug data tagged with '5ab3ecbbadeb2'. : https://preview.ibb.co/c7Lj0H/2.png Но, если это страница ошибки, то все ок, она есть. И в папку runtime/debug идет запись. https://previ...
imyapolzovatelya
2018.03.14, 21:58
Форум: Общие вопросы (Yii 2.x)
Тема: [решено]Не откатывается, $rollBack
Ответы: 2
Просмотры: 813

Re: [решено]Не откатывается, $rollBack

а, в myisam не работает, яснопонятно
imyapolzovatelya
2018.03.14, 21:37
Форум: Общие вопросы (Yii 2.x)
Тема: [решено]Не откатывается, $rollBack
Ответы: 2
Просмотры: 813

Re: Не откатывается, $rollBack

Cкажите, а такой код
$transaction = Yii::$app->db->beginTransaction();
$user->nick = 'test';
$user->save(false);
$transaction->rollBack();
Должен ли удалить только что созданную запись? Чет не удаляет
imyapolzovatelya
2018.03.14, 21:23
Форум: Общие вопросы (Yii 2.x)
Тема: [решено]Не откатывается, $rollBack
Ответы: 2
Просмотры: 813

[решено]Не откатывается, $rollBack

Транзакции изучаю. Написал такой код try { if (!$user->save(false)) { throw new Exception('Не удалось сохранить пользователя'); } $profile = new Profile; $profile->user_id = $user->id; if (!$profile->save(false)) { throw new Exception('Не удалось создать профиль пользователя.'); } $transaction->comm...