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

undestroyer
2018.05.17, 13:10
Форум: Общие вопросы (Yii 2.x)
Тема: Экранирование обратного слеша (\) при построении запросов
Ответы: 4
Просмотры: 1968

Re: Экранирование обратного слеша (\) при построении запросов

Не совсем понятно, в данном примере ты хочешь найти все документы с названием "документ 22\23\11"? Да а почему тогда ->one() ? А, ты в этом смысле, нет, нужно найти именно один документ с указанным именем. Сути проблемы не меняет. Проблема именно в обратном слеше. Если его сэкранировать и...
undestroyer
2018.05.17, 12:13
Форум: Общие вопросы (Yii 2.x)
Тема: Экранирование обратного слеша (\) при построении запросов
Ответы: 4
Просмотры: 1968

Re: Экранирование обратного слеша (\) при построении запросов

Gyry писал(а): 2018.05.17, 10:51 Не совсем понятно, в данном примере ты хочешь найти все документы с названием "документ 22\23\11"?
Да
undestroyer
2018.05.17, 09:56
Форум: Общие вопросы (Yii 2.x)
Тема: Экранирование обратного слеша (\) при построении запросов
Ответы: 4
Просмотры: 1968

Экранирование обратного слеша (\) при построении запросов

Добрый день, сразу оговорюсь что у меня проект на Yii 2.0.13.1 и возможно проблема уже исправлена, но я не могу обновить до новой версии чтобы проверить. Форма поиска имеет атрибут name который принимает текстовое название запрашиваемого документа. Если в документе встречаются обратные слеши \, то п...
undestroyer
2018.02.14, 12:11
Форум: Общие вопросы (Yii 2.x)
Тема: Как передать ActiveQuery в where()?
Ответы: 1
Просмотры: 830

Re: Как передать ActiveQuery в where()?

Сделал protected методы, возвращающие массивы которые используются в методах фильтрации.

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

public function nammed($name) {
	return $this->andFilterWhere($this->buildNameCondition($name));
}

protected function buildNameCondition($name) {
	return ['like', 'name', $name];
}

undestroyer
2018.02.14, 09:40
Форум: Общие вопросы (Yii 2.x)
Тема: Как передать ActiveQuery в where()?
Ответы: 1
Просмотры: 830

Как передать ActiveQuery в where()?

Предположим есть таблица товаров (Product : ActiveRecord), в которой нас интересуют 2 поля: "Название" (name) и "Артикул" (sku). На сайте есть 2 вида поиска: на форме фильтрации каждому атрибуту выделено отдельное поле на форме фильтрации есть одно поле, которое ищет сразу по дву...
undestroyer
2018.02.12, 13:06
Форум: Общие вопросы (Yii 2.x)
Тема: Не могу использовать класс из classMap (Namespace missing)
Ответы: 2
Просмотры: 1428

Re: Не могу использовать класс из classMap (Namespace missing)

zelenin писал(а): 2018.02.12, 12:52
undestroyer писал(а): 2018.02.12, 12:44В кастомных классах прописано "namespaсe yii\base".

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

PHP Fatal error:  Uncaught yii\base\UnknownClassException: Unable to find 'yii\helpers\ArrayHelper'

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

Yii::$classMap['yii\helpers\ArrayHelper'] = '@app/modules/v1/components/utils/ArrayHelper.php';
Спасибо! Слепота...
undestroyer
2018.02.12, 12:44
Форум: Общие вопросы (Yii 2.x)
Тема: Не могу использовать класс из classMap (Namespace missing)
Ответы: 2
Просмотры: 1428

Не могу использовать класс из classMap (Namespace missing)

Пытаюсь добавить поддержку вложенных атрибутов через expand как обсуждалось тут: https://github.com/yiisoft/yii2/issues/6844#issuecomment-131482508 Кастомные файлы ArrayHelper.php и ArrayableTrait.php лежат в api/modules/v1/components/utils (api - приложение как frontend и backend из advances шаблон...
undestroyer
2017.12.05, 05:03
Форум: REST API (Yii 2.x)
Тема: Кэширование ответа REST API
Ответы: 2
Просмотры: 2269

Re: Кэширование ответа REST API

Подниму пожалуй тему, проблема все еще актуальна и не решена :(
undestroyer
2017.12.05, 05:02
Форум: REST API (Yii 2.x)
Тема: Десктоп приложение / авторизация
Ответы: 1
Просмотры: 1704

Re: Десктоп приложение / авторизация

Как вариант, можно сделать такую oAuth-подобную схему. Создаете таблицу токенов: access_token (string, токен доступа) refresh_token (string, токен восстановления) access_expire_at (int/dateteime/timestamp, метка времени когда истекает токен доступа) refresh_expire_at (int/dateteime/timestamp, метка ...
undestroyer
2017.12.05, 04:35
Форум: REST API (Yii 2.x)
Тема: Angular, POST и OPTIONS запросы
Ответы: 2
Просмотры: 2503

Re: Angular, POST и OPTIONS запросы

Известный баг. PR на ГХ: https://github.com/yiisoft/yii2/pull/14618 Пока разработчики примут исправление, можете унаследовать фильтр и исправить его как в PullRequest'е
undestroyer
2017.12.05, 04:32
Форум: REST API (Yii 2.x)
Тема: Cors запрос
Ответы: 9
Просмотры: 5337

Re: Cors запрос

CORS фильтр в текущей версии Yii2 не может обработать запрос из браузера: https://github.com/yiisoft/yii2/pull/14618 Исправление намечено на версию 2.0.14, но это не точно
undestroyer
2017.11.23, 06:20
Форум: Тестирование (Yii 2.x)
Тема: Как применять фикстуры для приемочных тестов?
Ответы: 8
Просмотры: 4267

Re: Как применять фикстуры для приемочных тестов?

ElisDN писал(а): 2017.11.22, 08:58
undestroyer писал(а): 2017.11.22, 07:45 Хотя в FunctionalTesterActions есть метод grabFixture, которого нет в AcceptanceTesterActions.
Пропишите part: [init, orm, fixtures] в acceptance.suite.yml и такие же методы появятся в приёмочных.
Спасибо Дмитрий и Nex-Otaku! Все действительно решилось этой строчкой конфигурации.
undestroyer
2017.11.22, 07:46
Форум: Тестирование (Yii 2.x)
Тема: Как применять фикстуры для приемочных тестов?
Ответы: 8
Просмотры: 4267

Re: Как применять фикстуры для приемочных тестов?

В приёмочных тестах также всё подключается через конфиги тестового окружения. Можно пример, как через конфиг тестового окружения настроить фикстуру? Скорее вы предлагаете использовать СУБД с тестовой базой, но это неудобно, т.к. для выполнения большого количества запросов к методам, доступным тольк...
undestroyer
2017.11.22, 07:45
Форум: Тестирование (Yii 2.x)
Тема: Как применять фикстуры для приемочных тестов?
Ответы: 8
Просмотры: 4267

Re: Как применять фикстуры для приемочных тестов?

В шаблоне app-advanced нет приемочных тестов на авторизацию. Только Unit. В Functional есть. Да, в Functional есть пример работы с фикстурой, но в нем невозможно отправить POST запрос на API. В AcceptanceTesterActions есть метод sendPOST(), чего нет в FunctionalTesterActions. Хотя в FunctionalTeste...
undestroyer
2017.11.17, 13:22
Форум: Тестирование (Yii 2.x)
Тема: Как применять фикстуры для приемочных тестов?
Ответы: 8
Просмотры: 4267

Re: Как применять фикстуры для приемочных тестов?

В шаблоне app-advanced уже есть готовый тест на авторизацию и к нему как раз идёт готовая фикстура БД для создания тестового аккаунта пользователя. Используйте её, либо разберите как она работает, и сделайте аналогичную. В шаблоне app-advanced нет приемочных тестов на авторизацию. Только Unit. В un...
undestroyer
2017.11.16, 10:43
Форум: Тестирование (Yii 2.x)
Тема: Как применять фикстуры для приемочных тестов?
Ответы: 8
Просмотры: 4267

Как применять фикстуры для приемочных тестов?

Создаю API, в нем есть метод авторизации /site/login , в котором пользователь получает токен авторизации. Для остальных запросов нужно использовать этот токен и передавать его как HTTP. Логика подсказывает, что мои приемочные тесты должны либо: 1) Каждый раз выполнять авторизацию и брать актуальный ...
undestroyer
2017.08.29, 06:19
Форум: REST API (Yii 2.x)
Тема: Кэширование ответа REST API
Ответы: 2
Просмотры: 2269

Кэширование ответа REST API

Добрый день, подскажите как правильно кэшировать отформатированный ответ? Метод API возвращает данные о погоде, которые обновляются 1 раз в час. Данные берутся из базы, ответ - сборная солянка из 5 таблиц БД, (в городе несколько точек наблюдения, каждая содержит в себе данные по нескольким позициям)...
undestroyer
2017.04.25, 08:15
Форум: Общие вопросы (Yii 2.x)
Тема: Одновременная работа с несколькими базами данных
Ответы: 2
Просмотры: 1589

Re: Одновременная работа с несколькими базами данных

Сделал такой workaround, интересно мнение более опытных разработчиков Унаследовал \yii\db\Connection, сделал свой MultidbConnection, добавил в него метод: public function setDbId($id) { $newDSN = 'mysql:host=localhost;dbname=database_' . $id; if ($newDSN != $this->dsn) { $this->close(); $this->dsn =...
undestroyer
2017.04.24, 10:55
Форум: Общие вопросы (Yii 2.x)
Тема: Одновременная работа с несколькими базами данных
Ответы: 2
Просмотры: 1589

Одновременная работа с несколькими базами данных

Добрый день, представим ситуацию, есть N баз данных с одинаковой структурой, но разными данными. У всех стандартный шаблон формирования имени (database_{N}) Количество таких БД динамическое. Нужно пройтись по всем БД и провести некоторые операции. Конфигурация компонента БД одна для всех 'db' => [ '...
undestroyer
2017.04.06, 05:59
Форум: Общие вопросы (Yii 2.x)
Тема: Не получается отключить Behavior в Action, установленный в config
Ответы: 6
Просмотры: 2895

Re: Не получается отключить Behavior в Action, установленный в config

ElisDN писал(а): 2017.04.05, 15:50
undestroyer писал(а): 2017.04.05, 15:26 В документации по yii\base\Behavior не упоминается except. Я что-то упустил?
AccessControl, VerbFilter и подобные поведения для контроллеров наследуют от ActionFilter, где это есть. Сделайте и своё поведение его наследником, переопределив метод afterAction.
Теперь понял, спасибо!