These are chat archives for yiisoft/yii2/rus

21st
Sep 2017
Punka
@Punka
Sep 21 2017 04:11

приветствую коллеги

KarmaBot
@KarmaBot
Sep 21 2017 04:11
Будь как дома, @Punka, я ни в чем не откажу. Много мануалов, коль желаешь, покажу :)
Кот Олигарха
@OligarchCat_twitter
Sep 21 2017 04:54
привет
KarmaBot
@KarmaBot
Sep 21 2017 04:54
@OligarchCat_twitter, привет, как настроение?
Кот Олигарха
@OligarchCat_twitter
Sep 21 2017 04:59
@KarmaBot а у тебя?
AlexeyGen
@AlexeyGen
Sep 21 2017 05:57
Привет всем!
KarmaBot
@KarmaBot
Sep 21 2017 05:57
@AlexeyGen, здравствуй.
AlexeyGen
@AlexeyGen
Sep 21 2017 05:59
Народ, подскажите. Хочу чтобы в field($model, 'checkboxIds')->checkboxList($clients CSS-стили чекбоксов формировались в зависимости от внешних условий (значение соответствующего элемента стороннего массива). Я так понимаю, в этом случае нужно на параметр item метода checkboxList навешивать коллбэк.
А теперь, внимание, вопрос. Как передать в этот коллбэк внешний массив?
Типа вот:
$form->field($model, 'checkboxIds')->checkboxList($clients, [
            'class' => 'display-block',
            'item' => function ($index, $label, $name, $checked, $value ){
                $i = $index;
                $disable = false;
                if ($status[$value] == '2') {
                    $disable = true;
                }

                $checkbox = Html::checkbox($name, $checked, ['value' => $value, 'disabled' => $disable]);
                return Html::tag('div', Html::label($checkbox . $label), ['class' => 'checkbox']);
            }
    ])->label('Клиенты')
Как в этот коллбэк передать $status?
Punka
@Punka
Sep 21 2017 06:03
@AlexeyGen ты уверен что в анонимную функцию именно эти параметры?
@AlexeyGen вроде же funсtion($model) { какой-то код }
@AlexeyGen и в теле можно обратится так $model->status
AlexeyGen
@AlexeyGen
Sep 21 2017 06:05
$status не принадлежит модели.
@Punka Это отдельный массив.
Punka
@Punka
Sep 21 2017 06:06
@AlexeyGen мне то это откуда было знать
@AlexeyGen я не вижу то что скрыто )
@AlexeyGen статус лежит в связной модели?
@AlexeyGen или вообще не в модели?
AlexeyGen
@AlexeyGen
Sep 21 2017 06:07
@Punka пример взял отсюда:
yiisoft/yii2#7453
@Punka статус вообще не в модели. Просто массив.
Punka
@Punka
Sep 21 2017 06:08
слишком мало информации
AlexeyGen
@AlexeyGen
Sep 21 2017 06:08
Хотя, кстати, изначально в модели, но в другой. Парсю её - из модели маппирую в массив.
Суть вопроса: можно ли как-то в указанный коллбэк передавать внешние переменные?
не из модели
Кот Олигарха
@OligarchCat_twitter
Sep 21 2017 06:10
@AlexeyGen а что мешает статическим методом взять что нужно и мучить в нужных местах?
AlexeyGen
@AlexeyGen
Sep 21 2017 06:10
@OligarchCat_twitter эм... непонятно. Можно поподробнее?
Punka
@Punka
Sep 21 2017 06:14
Model::getStatuses(); к примеру
и он же вернет массив хрен пойми чего
)))
AlexeyGen
@AlexeyGen
Sep 21 2017 06:21
@Punka дык это... в каждой итерации получать список статусов?... Не комильфо - правильно же было бы один раз получить, и потом всё время использовать.
yamilramilev
@yamilramilev
Sep 21 2017 06:22
@AlexeyGen 'item' => function ($index, $label, $name, $checked, $value ) use ($status){
AlexeyGen
@AlexeyGen
Sep 21 2017 06:22
О!
@yamilramilev щас попробую!
@yamilramilev ну, в-общем работает! Спасибо!!!
KarmaBot
@KarmaBot
Sep 21 2017 06:26
Спасибо (+1) для @yamilramilev принято! Текущая карма +4.
Andrey Kushnarev
@andku83
Sep 21 2017 06:32
@AlexeyGen один раз получаем, используем сколько хотим
    protected static $_rates = [];

    public static function getRate($iso){
        if (empty(self::$_rates)){
            self::$_rates = self::find()->select(['rate', 'iso'])->indexBy('iso')->column();
        }
        return isset(self::$_rates[$iso]) ? self::$_rates[$iso] : null;
    }
Punka
@Punka
Sep 21 2017 06:33
@andku83 паттерн одиночка )
Andrey Kushnarev
@andku83
Sep 21 2017 06:34
конструкцию в ретурн можно заменть на ArrayHelper::getValue
Eugene
@bloodrain777
Sep 21 2017 07:28
всем привет
KarmaBot
@KarmaBot
Sep 21 2017 07:28
@bloodrain777, и тебе привет ;)
Eugene
@bloodrain777
Sep 21 2017 08:33
Мужики, в зависимости от условия нужно использовать разный компонент mail. Допустим если url = site.ru использовать Mail, если site.com.ua использовать Mail2, знает кто как запилить? Хотелось бы сделать все через конфиг
des1roer
@des1roer
Sep 21 2017 08:36
народ а как вырезать вместе с символом новой строки?
Кот Олигарха
@OligarchCat_twitter
Sep 21 2017 08:36
@bloodrain777 дык а для каждого сайта свой конфиг сделать, не?
Eugene
@bloodrain777
Sep 21 2017 08:37
Придумал. спасибо
KarmaBot
@KarmaBot
Sep 21 2017 08:37
@bloodrain777, в этом чате принято добавлять имя пользователя, чтобы его поблагодарить.
Eugene
@bloodrain777
Sep 21 2017 08:38
@OligarchCat_twitter Система одна
Кот Олигарха
@OligarchCat_twitter
Sep 21 2017 08:38
@bloodrain777 колись как :)
Eugene
@bloodrain777
Sep 21 2017 08:38
:D Не скажу
Кот Олигарха
@OligarchCat_twitter
Sep 21 2017 08:39
@bloodrain777 ну не спасибо тебе тады :)))
Eugene
@bloodrain777
Sep 21 2017 08:39
:D
empoower
@empoower
Sep 21 2017 08:42
Меня заставляют делать api на wordpress, я говорю что так не правильно и я могу сделать все грамотно на yii2 за 1 неделю! Мне не верят, говорят что за зверь такой yii2? В итоге уже полтора месяца мучаюсь с wordpress, где всего 2 гребанные таблицы для девелопера завязанные друг с другом! 2 ТАБЛИЦЫ Карл!!! Прочувствуйте мою боль.
Eugene
@bloodrain777
Sep 21 2017 08:44
Я недавно впервые взялся за вордпресс, надо было сайт скопипиздить, я был просто в шоке
гори он в аду
И это zend
empoower
@empoower
Sep 21 2017 08:46
Пристрелите меня
Eugene
@bloodrain777
Sep 21 2017 08:46
Где ООП где вообще проектирование.... как они эту херь поддерживают и развивают я не понимаю
Километровые простыни кода
empoower
@empoower
Sep 21 2017 08:47
Он держится благодаря большому количеству плагинов... каторые пляшут вогруг этих 2-х таблиц.
Punka
@Punka
Sep 21 2017 08:47
@bloodrain777 там процедурный подход )))
Eugene
@bloodrain777
Sep 21 2017 08:48
@Punka Там пиздец :D
Punka
@Punka
Sep 21 2017 08:48
@bloodrain777 битрикс мне больше не нравится, чем wp
@bloodrain777 на мой взгляд он хуже
empoower
@empoower
Sep 21 2017 08:48
Каждый день плачу в подушку по ночам от этого WP
Eugene
@bloodrain777
Sep 21 2017 08:48
Я его вообще не трогал, и наверное слава богу
Punka
@Punka
Sep 21 2017 08:50
кто шарит в ssh авторизации по ключу?
я ключ сгенерил, открытый ключ прописал в другой машине, но он все равно не дает авторизоваться по ключу
хочу через rsync перегонять бекапы
empoower
@empoower
Sep 21 2017 08:51
@Punka ubuntu?
Punka
@Punka
Sep 21 2017 08:52
@empoower ага
@empoower в authorized_keys прописал новой строкой
empoower
@empoower
Sep 21 2017 08:52
в .ssh есть файл config
Punka
@Punka
Sep 21 2017 08:52
@empoower может стоило через команду
@empoower ну cd ~/.ssh
@empoower может как то нужно регистрировать в системе помимо конфига?
empoower
@empoower
Sep 21 2017 08:54
@Punka в конфиге пропиши данные и все заработает)
Host domain-name
HostName 192.168.1.1
User root
IdentityFile ~/.ssh/id_rsa
ну ip соответственно хоста
Punka
@Punka
Sep 21 2017 08:57
@empoower id_rsa там где я сгенерил ключ?
@empoower дык это имя ключу, который выдает по умолчанию, если ты не указал имя файла
empoower
@empoower
Sep 21 2017 08:58
да
Punka
@Punka
Sep 21 2017 08:58
я его сгенерил,
и добавил на другую машину
empoower
@empoower
Sep 21 2017 08:59
затем копировать rsync -avhz folder_from1/. domain-name:~/folder_to_1/folder_to_2/
Punka
@Punka
Sep 21 2017 08:59
@empoower я знаю как, просто не дает этого сделать
Permission denied (publickey).
говорит нет у него ключу
)
empoower
@empoower
Sep 21 2017 09:00
только сначало добавь -n так он сделает эмуляцию копирования (покажет файлы)
проверь ключ, при копировании мог с пробелами перенести
с терминала копировал?
Punka
@Punka
Sep 21 2017 09:01
@empoower нету пробелов
@empoower да
empoower
@empoower
Sep 21 2017 09:02
пробелы, переносы ...
Punka
@Punka
Sep 21 2017 09:02
@empoower все там норм
empoower
@empoower
Sep 21 2017 09:02
ну тогда на твоем компе все впорядке... ищи проблему на сервере
Punka
@Punka
Sep 21 2017 09:03
@empoower ой забыл, общение идет сервер с сервером
@empoower тоесть не локально
Eugene
@bloodrain777
Sep 21 2017 09:04
@Punka паблик ключ на сервак копирнул?
Punka
@Punka
Sep 21 2017 09:05
@bloodrain777 да
@bloodrain777 разобрался, забыл при генерации указать -t rsa
(
@empoower @bloodrain777 спасибо
KarmaBot
@KarmaBot
Sep 21 2017 09:05
Спасибо (+1) для @empoower принято! Текущая карма +4.
Спасибо (+1) для @bloodrain777 принято! Текущая карма +20.
Punka
@Punka
Sep 21 2017 09:06
заработало )
фух
empoower
@empoower
Sep 21 2017 09:07
@Punka поздравляю)
Eugene
@bloodrain777
Sep 21 2017 09:08
@Punka Да не за что
@Punka Кстати как твой лоад евередж
или ты переехал?
des1roer
@des1roer
Sep 21 2017 09:09
хей
Punka
@Punka
Sep 21 2017 09:09
@bloodrain777 забыл, в чем причина была :D
@bloodrain777 работает и ладно
des1roer
@des1roer
Sep 21 2017 09:09
а можно задать датапровайдеру каунт?
Punka
@Punka
Sep 21 2017 09:09
:D
@bloodrain777 остался на нем же
@des1roer лимит?
des1roer
@des1roer
Sep 21 2017 09:10
да
Punka
@Punka
Sep 21 2017 09:10
@des1roer можно
des1roer
@des1roer
Sep 21 2017 09:10
public function getTotalCount()
{
    if ($this->getPagination() === false) {
        return $this->getCount();
    } elseif ($this->_totalCount === null) {
        $this->_totalCount = $this->prepareTotalCount();
    }

    return $this->_totalCount;
}
как?
Punka
@Punka
Sep 21 2017 09:10
@des1roer у него есть втроенная пагинация
@des1roer вроде через pagination
des1roer
@des1roer
Sep 21 2017 09:11
мне ограничить всю выборку нужно
а не пагинацию
Punka
@Punka
Sep 21 2017 09:11
@des1roer если если в квери указать лимит?
des1roer
@des1roer
Sep 21 2017 09:12
он перезапишется
Punka
@Punka
Sep 21 2017 09:12
@des1roer пробовал?
des1roer
@des1roer
Sep 21 2017 09:12
он будет брать сколько в пагинаторе указано
Eugene
@bloodrain777
Sep 21 2017 09:13
@Punka Ну и ладно :D Работает и гуд
Punka
@Punka
Sep 21 2017 09:13
@des1roer в pagination можешь указать лимит
Eugene
@bloodrain777
Sep 21 2017 09:14
@des1roer Любые условия в limit и offset будут переписаны запросом конечного пользователя к различным страницам ( через конфигурацию pagination). - из доки
Punka
@Punka
Sep 21 2017 09:15
$query = new Query();
$provider = new ActiveDataProvider([
    'query' => $query->from('post'),
    'pagination' => [
        'pageSize' => 20,
        'limit' => 50
    ],
]);
$query = new Query();
$provider = new ActiveDataProvider([
    'query' => $query->from('post'),
    'pagination' => [
        'pageSize' => 20,
        'totalCount' => 50
    ],
]);
либо так, может сработает
)
des1roer
@des1roer
Sep 21 2017 09:19
'dataProvider' => new PKeyNextDataProvider([
'query' => ItemRutut::findYml(),
'totalCount' => 3000,
'pagination' => [
'pageSize' => self::PAGE_SIZE
]
]),
Baumgarten2
@Baumgarten2
Sep 21 2017 10:12
Есть форма для загрузки файла. <?= $form->field($model, 'uploadFile')->label($model->user_agreement ? 'Изменить файл' : 'Загрузить файл')->fileInput() ?> http://i.prntscr.com/u9UY6iucSgiN28aUPzazYw.png
Как поменять стили для неё? Чтобы изменилась кнопка, но осталась надпись Файл не выбран?
Punka
@Punka
Sep 21 2017 10:23
@Baumgarten2 с помощью css
Кот Олигарха
@OligarchCat_twitter
Sep 21 2017 10:24
@Baumgarten2 class="btn btn-danger"
если бутстрап есть
Punka
@Punka
Sep 21 2017 10:25
@OligarchCat_twitter он не написал как должна изменится )
@OligarchCat_twitter может нужно фоновую картинку туда поставить
Кот Олигарха
@OligarchCat_twitter
Sep 21 2017 10:26
@Punka как пример жа :)
что в классе он напишет - ент вторично :)
Punka
@Punka
Sep 21 2017 10:27
@OligarchCat_twitter дык это не же буттон )
@OligarchCat_twitter а форма загрузки файла
Baumgarten2
@Baumgarten2
Sep 21 2017 10:27
@OligarchCat_twitter смотри, нужно сделать красивую кнопку (а не дефолтную), но чтобы имя выбранного файла не скрывалось и было за пределами кнопки
Punka
@Punka
Sep 21 2017 10:27
ладно мне домой видимо пора уже
брежу..
@Baumgarten2 добавь инпуту класс какой нибудь, и через него пробуй допустим цвет поменять
@Baumgarten2 а еще через файрбаг можешь увидеть как достучаться
Punka
@Punka
Sep 21 2017 10:36
нужно писать шелл для автоматизации задачи
прям не программист, а сис. админ
)))
Misha
@sallfris
Sep 21 2017 12:18
Как мне написать патч который поменяет структуру БД ?
создать консольный котроллер в котором:
Punka
@Punka
Sep 21 2017 12:19
@sallfris миграции не канают?
Misha
@sallfris
Sep 21 2017 12:19
1) Переименовать существующие таблицы.
2) Создать новые
3) Перенести данные
4) Проверить перенос
?
@Punka миграции мне кажется не подойдут
Punka
@Punka
Sep 21 2017 12:22
@sallfris тогда через консоль
des1roer
@des1roer
Sep 21 2017 12:38
@sallfris миграции все умеют
Misha
@sallfris
Sep 21 2017 12:45
@des1roer да знаю. Мне надо вот это https://yadi.sk/i/x6DQW7aM3N7R2g превратить в https://yadi.sk/i/zcxeqxKY3N7RD9 Сижу и смотрю и не знаю с чего начать :)
Надо наверно сначала алгоритм составить:) На бумажке
Misha
@sallfris
Sep 21 2017 14:31

Почему ошибку выдает?

# yii migrate/create 'app\\modules\\orders\\migrations\\update_orders_delivery_info_table'
Yii Migration Tool (based on Yii v2.0.13-dev)

Error: The migration name should contain letters, digits, underscore and/or backslash characters only.

В конфиге

'controllerMap' => [
        'migrate' => [
            'class' => 'yii\console\controllers\MigrateController',
            'migrationNamespaces' => [
                'app\migrations',
                'app\modules\orders\migrations',
            ],
        ],
    ],
А так норм :)
yii migrate/create app\modules\orders\migrations\update_orders_delivery_info_table
Eugene
@bloodrain777
Sep 21 2017 15:07
потому что кавычки
Misha
@sallfris
Sep 21 2017 15:08
@bloodrain777 в доках с кавычками.
Eugene
@bloodrain777
Sep 21 2017 15:09
@sallfris Не знаю, там регулярка не пропускает
@sallfris ^[\w\]+$ там еще один обратные слеш, но ска гиттер мать его убирает
Baumgarten2
@Baumgarten2
Sep 21 2017 15:27
Ещё такой вопрос. Файлы загружаются только не больше 1.5 МБ (примерно). Если больше, всё тупо виснет. Ограничение по размеру выставил намного больше. С чем это может быть связано?
Misha
@sallfris
Sep 21 2017 15:36
@Baumgarten2 логи смотреть надо
Misha
@sallfris
Sep 21 2017 15:52
а есть смысл создавать индекс на уникальный столбец?
nihaha
@nihaha
Sep 21 2017 16:16
какой самый easy way сделать мультиязычность для двух языков на yii2? я видел есть готовые расширения, но их минимум три + большая статья на хабре, т.е. есть из чего выбирать, но нужно со всем детально разбираться. У кого-то есть опыт разработки мультиязычных проектов, что использовали и как хранили?
Alexey Samoylov
@russianlagman
Sep 21 2017 16:19
свои костыли
nihaha
@nihaha
Sep 21 2017 16:20
и выкладываешь на пэкэджист, чтоб было четыре расширения))
Alexey Samoylov
@russianlagman
Sep 21 2017 16:20