Найдено 26 результатов
- 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. То ес...
- 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 Второй запрос сортирует найденных фре...
- 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']); } Выполн...
- 2019.01.18, 16:17
- Форум: Обо всем
- Тема: Борьба со спамом
- Ответы: 1
- Просмотры: 1545
Борьба со спамом
Недавно на моем ресурсе с посещаемостью 3500 чел/сутки, начали регаться спамеры, и, стали отправлять спам посредством личных сообщений и комментариев к постам других пользователям. Всего у меня 40к пользователей, постов 200к. Регистрируются явно не спам боты, так как на моем сайте стоит на форме рег...
- 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, ...) Вопрос: Можно ли...
- 2018.10.04, 10:31
- Форум: Новости, события, встречи
- Тема: Yii 2.1 не будет, встречайте Yii 3.0
- Ответы: 29
- Просмотры: 18618
Re: Yii 2.1 не будет, встречайте Yii 3.0
формы будут на 4ом бутстрапе?
- 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);
\Yii::$app->I18n->format("{n, plural, one{# год} few{# года} many{# лет} other{# лет}}", ['n' => $age], \Yii::$app->language);
- 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,
));
- 2018.08.25, 12:35
- Форум: Общие вопросы (Yii 2.x)
- Тема: вот такая ajax пагинация
- Ответы: 0
- Просмотры: 764
вот такая ajax пагинация
Есть у меня сайт, сейчас делаю новую версию... И захотелось внедрить pjax на сайт, но он мне не нравится тем, что он тупо делает запрос на эту же страницу, парсит и возвращает, что нужно. То есть, с точки зрения производительности выгоды особой нет. Поэтому придумал (или свелосипедил) такой метод. С...
- 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> и тд Можно выбирать...
- 2018.08.11, 03:33
- Форум: Общие вопросы (Yii 2.x)
- Тема: передать объект query через ajax
- Ответы: 2
- Просмотры: 970
Re: передать объект query через ajax
разобрался. Надо было serialize использовать, а не json_encode().
Объект пришел целенький, рабочий
Объект пришел целенький, рабочий
- 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...
- 2018.07.19, 16:09
- Форум: Общие вопросы (Yii 2.x)
- Тема: Как работает pjax
- Ответы: 6
- Просмотры: 2014
Re: Как работает pjax
Например, есть статья, а под ней комменты, которые можно листать pjax-ом. Если сделается запрос на эту же страницу, то заново выполнится sql-запрос SELECT статьи, и выполнятся прочие действия, инкремент количества просмотров статьи - а все это мне не нужно. Было бы здорово, если бы выполнилось тольк...
- 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) Происходит парсинг это...
- 2018.06.19, 17:25
- Форум: Общие вопросы (Yii 2.x)
- Тема: pjax - дополнительная выборка
- Ответы: 2
- Просмотры: 795
pjax - дополнительная выборка
Добрый вечер. Использую ActiveDataProvider+ListView для вывода записей. Недавно подключил pjax. Пагинация работает. Теперь я хочу добавить на страницу две ссылки: "показать активные", "показать неактивные". Когда нажму "показать активные", в query должен добавиться andW...
- 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>'; } Естественно, это лучше сделать в к...
- 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...
- 2018.03.14, 21:58
- Форум: Общие вопросы (Yii 2.x)
- Тема: [решено]Не откатывается, $rollBack
- Ответы: 2
- Просмотры: 813
Re: [решено]Не откатывается, $rollBack
а, в myisam не работает, яснопонятно
- 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();
Должен ли удалить только что созданную запись? Чет не удаляет
$transaction = Yii::$app->db->beginTransaction();
$user->nick = 'test';
$user->save(false);
$transaction->rollBack();
Должен ли удалить только что созданную запись? Чет не удаляет
- 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...