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

Greengo86
2021.11.28, 19:36
Форум: Общие вопросы (Yii 2.x)
Тема: Подскажите как вернуть модель связную с другой в ActiveDataProvider
Ответы: 13
Просмотры: 2034

Re: Подскажите как вернуть модель связную с другой в ActiveDataProvider

Докопался до истины. Если делать дочерние модели, то по умолчанию выборка данных происходит из таблицы исходя из полученного из - Inflector::camel2id(StringHelper::basename(get_called_class()), '_') То есть по умолчанию выбирали из таблицы index_author, так как класс IndexAuthor! Для этого в моделе ...
Greengo86
2021.11.28, 17:46
Форум: Общие вопросы (Yii 2.x)
Тема: Подскажите как вернуть модель связную с другой в ActiveDataProvider
Ответы: 13
Просмотры: 2034

Re: Подскажите как вернуть модель связную с другой в ActiveDataProvider

Как-то тоже это можно обойти? Не указывать, но чтобы связная модель загружалась... Либо указывать expand в адресе, либо для каждой выборки сделать отдельные классы-наследники со своим fields(). Хм, ничего не понимаю! Сделал дочерние модели, но они не имеют нужного эффекта - приходит просто пустой м...
Greengo86
2021.11.27, 17:41
Форум: Общие вопросы (Yii 2.x)
Тема: Подскажите как вернуть модель связную с другой в ActiveDataProvider
Ответы: 13
Просмотры: 2034

Re: Подскажите как вернуть модель связную с другой в ActiveDataProvider

rak писал(а): 2021.11.27, 17:11

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

$_GET['expand'] = 'books';
Неужели для этого нет никакой настройки в urlManager? Ок, спасибо
Greengo86
2021.11.27, 17:35
Форум: Общие вопросы (Yii 2.x)
Тема: Подскажите как вернуть модель связную с другой в ActiveDataProvider
Ответы: 13
Просмотры: 2034

Re: Подскажите как вернуть модель связную с другой в ActiveDataProvider

Как-то тоже это можно обойти? Не указывать, но чтобы связная модель загружалась... Либо указывать expand в адресе, либо для каждой выборки сделать отдельные классы-наследники со своим fields(). Что-то совсем печально :shock: Как по Вашему, Дмитрий, что правильнее и изяшнее с точки зрения архитектур...
Greengo86
2021.11.27, 13:19
Форум: Общие вопросы (Yii 2.x)
Тема: Подскажите как вернуть модель связную с другой в ActiveDataProvider
Ответы: 13
Просмотры: 2034

Re: Подскажите как вернуть модель связную с другой в ActiveDataProvider

Но что мне делать теперь с тем, что при каждом методе (этот GET) мне надо возвращать разный набор полей? Уберите fields() и указывайте нужные поля в GET-запросе ?filelds=id,name,books Нет, к сожалению, в адресе, в урле могу указать указать только айдишник - {stand}/authors/2 Есть вариант, да - удал...
Greengo86
2021.11.27, 01:44
Форум: Общие вопросы (Yii 2.x)
Тема: Подскажите как вернуть модель связную с другой в ActiveDataProvider
Ответы: 13
Просмотры: 2034

Re: Подскажите как вернуть модель связную с другой в ActiveDataProvider

Вышел из положения, если можно это так назвать таким образом - class Author extends \common\models\Author { public function fields(){ $fields = parent::fields(); $fields['books'] = function ($model) { return $model->books; }; return $fields; } public function extraFields() { return ['books']; } } И ...
Greengo86
2021.11.26, 20:00
Форум: Общие вопросы (Yii 2.x)
Тема: Подскажите как вернуть модель связную с другой в ActiveDataProvider
Ответы: 13
Просмотры: 2034

Re: Подскажите как вернуть модель связную с другой в ActiveDataProvider

Также попробовал добавить в рест модель - class Author extends \common\models\Author { public function fields() { $fields = parent::fields(); unset($fields['id'], $fields['created_at'], $fields['updated_at'], $fields['bio']); return $fields; } public function extraFields() { return ['books']; } } Ре...
Greengo86
2021.11.26, 19:53
Форум: Общие вопросы (Yii 2.x)
Тема: Подскажите как вернуть модель связную с другой в ActiveDataProvider
Ответы: 13
Просмотры: 2034

Re: Подскажите как вернуть модель связную с другой в ActiveDataProvider

Дмитрий, по прежнему только автор на выходе :shock: public function getBooks() protected function prepareDataProvider() { $requestParams = Yii::$app->getRequest()->getBodyParams(); if (empty($requestParams)) { $requestParams = Yii::$app->getRequest()->getQueryParams(); } /* @var $modelClass \yii\db...
Greengo86
2021.11.26, 19:06
Форум: Общие вопросы (Yii 2.x)
Тема: Подскажите как вернуть модель связную с другой в ActiveDataProvider
Ответы: 13
Просмотры: 2034

Подскажите как вернуть модель связную с другой в ActiveDataProvider

Господа, никак не могу разобраться как мне в prepareDataProvider() в ViewAction вернуть модель автора и связные с ним книги :shock: public function actions() { .... 'view' => [ 'class' => ViewAction::class, 'modelClass' => $this->modelClass, 'checkAccess' => [$this, 'checkAccess'], ], ]; ... } Если ...
Greengo86
2019.08.04, 20:26
Форум: Общие вопросы (Yii 1.x)
Тема: Сортировка при criteria->leftJoinTable
Ответы: 3
Просмотры: 4466

Re: Сортировка при criteria->leftJoinTable

Ни у кого больше нет вариантов? Возможно нужно применить 2 join'а. Но как именно
Greengo86
2019.08.01, 10:24
Форум: Общие вопросы (Yii 1.x)
Тема: Сортировка при criteria->leftJoinTable
Ответы: 3
Просмотры: 4466

Re: Сортировка при criteria->leftJoinTable

Loveorigami, Нельзя мне использовать чистый SQL - никак! Не было бы проблемы, если бы можно было... А каким образом использовать директиву MAX во вложенном SELECT... $criteria->leftJoinTable('comments', 'com.posted_id = re.id', 'com'); Нашёл как можно использоваться MAX в criteria, но это также не с...
Greengo86
2019.08.01, 00:14
Форум: Общие вопросы (Yii 1.x)
Тема: Сортировка при criteria->leftJoinTable
Ответы: 3
Просмотры: 4466

Сортировка при criteria->leftJoinTable

Добрый вечер Всем! Помогите решить слудующу проблему: Есть таблицы постов и Необходимо сделав leftJoinTable, выбрать связанный с постом комментарий! Но так как связь один-ко-многим, комментарий должен быть один и последний! Последний добавленый, а не последнее изменение в update_at! $criteria->group...
Greengo86
2017.05.03, 21:28
Форум: Общие вопросы (Yii 2.x)
Тема: Вызов экшена по клику в tab's
Ответы: 17
Просмотры: 6618

Re: Вызов экшена по клику в tab's

Вообщем докопался до истины в чём именно проблема... А вот как теперь это решить... К проекту yii2 подключены, кроме всего прочего 2 скрипта: owl.carousel.min.js - скрипт для красивого и плавного перелистывания страничек в таблице И owl.carousel.js - скрипт от плагина карусель слайдер OwlCarousel2 П...
Greengo86
2017.05.02, 19:33
Форум: Общие вопросы (Yii 2.x)
Тема: Вызов экшена по клику в tab's
Ответы: 17
Просмотры: 6618

Re: Вызов экшена по клику в tab's

как-то странно вышли ;-) Ну просто больше совсем ничего не хочет работать в блоке где генерируется TabsX при помощи Ajax! Не прикрепляется событие к клику по кнопке там... А в JavaScript'е очень не силён! Если есть у кого-то идеи - буду рад рассмотреть... И вообще в этом случае напрашивается модаль...
Greengo86
2017.05.02, 19:08
Форум: Общие вопросы (Yii 2.x)
Тема: Вызов экшена по клику в tab's
Ответы: 17
Просмотры: 6618

Re: Вызов экшена по клику в tab's

Если кому-то вдруг поможет, то вышел из положения таким образом: <a class="show-match" href="#" onClick="popUp('<?php echo Url::to(['/play/match', 'id' => $play[$k]['id']]); ?>',600,500)"> C помощью popUp'а: function popUp(u,w,h) { var wc=parseInt((screen.availWidth-w)/...
Greengo86
2017.04.28, 23:52
Форум: Общие вопросы (Yii 2.x)
Тема: Вызов экшена по клику в tab's
Ответы: 17
Просмотры: 6618

Re: Вызов экшена по клику в tab's

Во всём да не всём))) $html = $this->renderAjax('last-chives', [ 'main_page' => 0, 'id' => $id, 'play' => $play, ]); return Json::encode($html); Рендерю вид 'last-chives' - Этот вид подгружается, данные приходят... Но тут(в TabX) прилетает блок информации с ссылкой при клике на которую, я хочу получ...
Greengo86
2017.04.18, 19:32
Форум: Общие вопросы (Yii 2.x)
Тема: Вызов экшена по клику в tab's
Ответы: 17
Просмотры: 6618

Re: Вызов экшена по клику в tab's

А да всё разобрался! Экшен: $id = Yii::$app->request->get('id'); $play = model::find()->with('teamHome', 'teamAway', 'league')->indexBy('id')->asArray()->limit(1)->where(['league_id' => $id])->orderBy(['date' => SORT_ASC])->all(); $html = $this->renderAjax('last-chives', [ 'id' => $id, 'play' => $pl...
Greengo86
2017.04.18, 19:02
Форум: Общие вопросы (Yii 2.x)
Тема: Вызов экшена по клику в tab's
Ответы: 17
Просмотры: 6618

Re: Вызов экшена по клику в tab's

непонятно зачем вы рендерите layout .. .вам надо вернуть только текст return "1111"; вам надо view без layout return $this->renderAjax .... Да, действительно, нафига я рендерю layout... return Json::encode($html); Странная конструкция... Вы сериализуете html в json? Так указано в документ...
Greengo86
2017.04.18, 16:48
Форум: Общие вопросы (Yii 2.x)
Тема: Вызов экшена по клику в tab's
Ответы: 17
Просмотры: 6618

Re: Вызов экшена по клику в tab's

Делайте return renderAjax Так - return $this->renderAjax('/layouts/main.php', ['cont' => $tabContent]); не работает передача данных, но с вёрсткой всё ок. До layout рендерил site/index тот же глюк с вёрсткой - там дополнительно подгружались 2 виджета, которые уже были в site/index и естессно всё на...
Greengo86
2017.04.18, 12:47
Форум: Общие вопросы (Yii 2.x)
Тема: Вызов экшена по клику в tab's
Ответы: 17
Просмотры: 6618

Re: Вызов экшена по клику в tab's

Хм, теперь другая проблема... В контроллере создаю экшен: public function actionTabsData() { $tabContent = 'Что-то там!!!!!'; $html = $this->renderAjax('/layouts/main.php', ['cont' => $tabContent]); return Json::encode($html); } И передаю в лейаут и вывожу: <?php $opt = [ [ 'label'=>'<i class="...