These are chat archives for yiisoft/yii2/rus

8th
Dec 2017
crazytosser00
@crazytosser00
Dec 08 2017 01:16
@demisang благодарю =)
KarmaBot
@KarmaBot
Dec 08 2017 01:16
Спасибо (+1) для @demisang принято! Текущая карма +14.
Ivan Orlov
@demisang
Dec 08 2017 04:06
@za4me Я сталкивался с рассылками, есть два варианта:
1) Использовать mail chimp, mandrill и т.п. сервисы рассылок, это без гемороя но платно.
2) Второй вариант подойдёт только если реально имеется необходимость делать очень много спама: выкупить диапазон ip-адресов, настроить свой прокси-сервер и и использовать эти ip в качестве smtp-proxy(Не знаю как точно это сделать, но работает так: например прокси сервер имеет ip 222.222.222.222, а запросы ты отправляешь на порты ip:50000, ip:50001, ip:50002 и т.п. и сервер на каждый порт выделяет определённый купленный ip адрес).
Во втором случае придётся регулярно проверять ip-шники в спам-базе вроде spamhaus.org (например здесь можно сразу по всем базам проверить свой ip или домен https://mxtoolbox.com/blacklists.aspx ) и отправлять прошения о прекращении блокировки.
Ну и регулярно получать сообщения от провайдера, который продал тебе эти IP, что нельзя отправлять так много спама :smile:

@nihaha хз что надо в php-storm сделать, но на vagrant-машине надо прописать

sudo apt-get install php5-xdebug
sudo nano /etc/php5/mods-available/xdebug.ini

и вставить такое содержимое:

zend_extension=xdebug.so
xdebug.remote_enable=1
xdebug.remote_connect_back=true
xdebug.idekey=PHPSTORM
xdebug.remote_host=10.0.2.2
xdebug.remote_port=9000
xdebug.remote_autostart=1
nihaha
@nihaha
Dec 08 2017 05:02
@demisang У меня вываливалось уведомление, что скрипт отработал без пауз, хотя брейкпоинты расставлены, но я уже нашел решение, мапить пути вручную... Странное дело
Alexey Samoylov
@russianlagman
Dec 08 2017 05:16
ща будем стримить
des1roer
@des1roer
Dec 08 2017 05:25
@russianlagman и че и как7
Alexey Samoylov
@russianlagman
Dec 08 2017 05:28
@des1roer только начали
Punka
@Punka
Dec 08 2017 05:53
@russianlagman ничего не понял из презентации.. (
Alexey Samoylov
@russianlagman
Dec 08 2017 05:56
@Punka :-(
ответы на вопросы чет не записались
Alexey Samoylov
@russianlagman
Dec 08 2017 06:12
@Punka чего не понял?
Alexey Samoylov
@russianlagman
Dec 08 2017 06:22
задавай вопросы :D
nihaha
@nihaha
Dec 08 2017 06:32
есть замечания по презентации, куда лучше написать?
Punka
@Punka
Dec 08 2017 06:38
@russianlagman Мне вообще докер не понятен. Я не вижу плюсы его использования (
nihaha
@nihaha
Dec 08 2017 06:39
как минимум разные окружения в рамках одного сервера на базе одной ОС
Кот Олигарха
@OligarchCat_twitter
Dec 08 2017 06:56
народ! привествую! не могу понять, что происходит: делаю RSS - собираю уже вручную страницу. Проверяю переменную - нет впереди пробела. вывожу в rss - впереди пробел. попробовал удалить первый символ - удаляет содержимое, а не пробел. в чем может быть косяк?
$header = '<?xml version="1.0" encoding="UTF-8"?>';
из-за синтаксической ошибки не разбирается xml
уже второй день борюсь этой ерундой
Andrey Kushnarev
@andku83
Dec 08 2017 07:39
@OligarchCat_twitter пробел или ентер в каком-нибудь файле перед конструкцией <?php
Ivan Orlov
@demisang
Dec 08 2017 07:39
@OligarchCat_twitter Так сразу и не скажешь, возможно проблема кодировки, надо смотреть детальнее как происходит отображение
Кот Олигарха
@OligarchCat_twitter
Dec 08 2017 07:41
да нигде больше нет
а это переменная формирует rss ленту
в переменной пробела нету
а при выдаче - есть
Andrey Kushnarev
@andku83
Dec 08 2017 07:42
а если перед выводом переменной сделать echo 1; перед 1 будет пробел?
Кот Олигарха
@OligarchCat_twitter
Dec 08 2017 07:43
ща попроб
Ivan Orlov
@demisang
Dec 08 2017 07:43
@OligarchCat_twitter А что с этой переменной потом происходит? Из неё формируется SimpleXmlElement или просто xml-строки конкатенируются? Ну и потом в результате происходит запись значения в файл или это экшен контроллера, который делает echo?
Кот Олигарха
@OligarchCat_twitter
Dec 08 2017 07:44
@demisang да просто собираю хэдер - потом форичу айтемы и в конце присобачиваю закрывающие тэги. все контектенацией делает
перед единичей тоже пробел
Andrey Kushnarev
@andku83
Dec 08 2017 07:45
ищи таким способом проблему ранее
Ivan Orlov
@demisang
Dec 08 2017 07:45
@OligarchCat_twitter А вывод-то как происходит?) Значение в файл или через echo отображается?
Кот Олигарха
@OligarchCat_twitter
Dec 08 2017 07:46
это результат функции в виде строки
Andrey Kushnarev
@andku83
Dec 08 2017 07:46
Иван спрашивает как ты его отдаешь клиенту
Кот Олигарха
@OligarchCat_twitter
Dec 08 2017 07:47
через эхо
самое прикольное что это чудище работало до этого норм - ничо не трогал
Ivan Orlov
@demisang
Dec 08 2017 07:48
Сделай дамп для результата функции через VarDumper::dump($resultString, 10, true); и посмотри, есть ли первым символом пробел.
Если пробела не будет - значит где-то ранее пробел выводится, например какой-нибудь beforeAction()
Кот Олигарха
@OligarchCat_twitter
Dec 08 2017 07:48
@demisang ща попробую..
при вардампе нет пробела
куды копать - я уже не най :)
Ivan Orlov
@demisang
Dec 08 2017 07:51
Ну и контроллер должен выглядеть как-то так:
public function actionRss()
{
    $content = MyRssGenerator::getResult();
    Yii::$app->response->format = \yii\web\Response::FORMAT_XML;

    return $content;
}
Кот Олигарха
@OligarchCat_twitter
Dec 08 2017 07:52
хм..
ща гляну..
Ошибка синтаксического анализа XML: объявление XML или текста не в начале сущности
Адрес: http://***.zz/rss
Строка 1, символ 2: <?xml version="1.0" encoding="UTF-8"?>
-^
это тот адский пробел :))
Ivan Orlov
@demisang
Dec 08 2017 07:56
@OligarchCat_twitter Попробуй ещё так проверить, добавь в свой контроллер:
public function afterAction($action, $result)
{
    \yii\helpers\VarDumper::dump($result, 10, true);
    die;
}
Кот Олигарха
@OligarchCat_twitter
Dec 08 2017 07:56
function createRSS() {
        $cache = Yii::$app->cache;
        //if (!$data = $cache->get(self::RSS_CACHE_INDEX)) {
            $query3 = new Query();
            $query2 = new Query();
            $query = new Query();
            $query->select(["i" => "id", "t" => "title", "c" => "create_at", "k" => "text", "cat" => new Expression('0')])->from("blog")->where(['active' => 1])->limit(5);
            $query2->select(["i" => "id", "t" => "name", "c" => "create_at", "k" => "content", "cat" => new Expression('1')])->from("news")->limit(5);
            $query3->select(["i" => "id", "t" => "title", "c" => "create_at", "k" => "description", "cat" => new Expression('2')])->from("lp")->where(['active' => 1])->limit(5);
            $query = $query->union($query2)->union($query3)->orderBy(['c' => SORT_DESC])->all();

            $rssData = new \yii\data\ActiveDataProvider([
                'query' => $query,
            ]);

            $header = '<?xml version="1.0" encoding="UTF-8"?>';

            $header .= '<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
<atom:link href="https://zachestnyibiznes.ru" rel="self" type="application/rss+xml"/>
<generator>RSS Generator 2.1.1</generator>
<docs>http://www.rssboard.org/rss-specification</docs>
<title>tttttt</title>
<link>https://tttt</link>
<description>tttttt</description>
<language>ru</language>
<copyright>tttttt</copyright>
<managingEditor>ttttt</managingEditor>
<webMaster>tttt</webMaster>';

            $end = '
</channel>
</rss>';

            $content = '';
            $i = 0;
            foreach ($rssData as $item) {
                $content .= '<item>';
                $content .= '<title>'.$item[$i]['t'].'</title>';
                $content .= '<description>'.$item[$i]['k'].'</description>';
                $content .= '<link>'.self::getUrl($item[$i]).'</link>';
                $content .= '<guid>'.self::getUrl($item[$i]).'</guid>';
                $content .= '<pubDate>'.date('D, j M Y H:i:s O', strtotime($item[$i]['c'])).'</pubDate>';
                $c = $item[$i]['cat'];
                $content .= '<category>'.self::$category[(int)$c].'</category>';
                $content .= '</item>';
                $i++;
            }

            $content = $header . $content . $end;
        Yii::$app->response->format = \yii\web\Response::FORMAT_XML;

        VarDumper::dump($content, 10, true); die;
            return $content;



//        } else
//            return $cache->get(self::RSS_CACHE_INDEX);
    }
KarmaBot
@KarmaBot
Dec 08 2017 07:56
@OligarchCat_twitter, чтобы показать длинный листинг кода желательно использовать pastebin-сервис, например gist.github.com или laravel.io/bin.
Ivan Orlov
@demisang
Dec 08 2017 07:59
Да уже понятно, что тут всё ок)
Кот Олигарха
@OligarchCat_twitter
Dec 08 2017 08:00
добавил в контроллер
lynicidn
@lynicidn
Dec 08 2017 08:01
content оберни еще в items
Кот Олигарха
@OligarchCat_twitter
Dec 08 2017 08:02
@lynicidn я делал по примеру view-source:https://nstarikov.ru/feed
там вокруг статьи только айтемс
lynicidn
@lynicidn
Dec 08 2017 08:02
или в рсс не надо, может гоню, но просто сразу в корне документа itemы эт выглядит не юзабельно
ок тогда
chanel выступает видимо как группа айтемов
Кот Олигарха
@OligarchCat_twitter
Dec 08 2017 08:04
@demisang я поставил в экшен вардампа, не могу понять как его заюзать? в экшене просто у ми так:
public function actionRss() {
        return Rss::createRSS();
    }
lynicidn
@lynicidn
Dec 08 2017 08:04
а либа стоит?
php-xml чет такое
$ apt-cache search php-xml
php-xml - DOM, SimpleXML, WDDX, XML, and XSL module for PHP [default]
Кот Олигарха
@OligarchCat_twitter
Dec 08 2017 08:05
@lynicidn нет, а зачем?
lynicidn
@lynicidn
Dec 08 2017 08:06
ну он тебе ругается что <?xml для него дико
или я чет не понял?
Ошибка синтаксического анализа XML: объявление XML или текста не в начале сущности
Адрес: http://***.zz/rss
Строка 1, символ 2: <?xml version="1.0" encoding="UTF-8"?>
Ivan Orlov
@demisang
Dec 08 2017 08:06
Это с браузера ошибка видимо)
lynicidn
@lynicidn
Dec 08 2017 08:07
полный лог стек покажи
Кот Олигарха
@OligarchCat_twitter
Dec 08 2017 08:08
@lynicidn вот никогда не понимал как этот лог выцепить :)
lynicidn
@lynicidn
Dec 08 2017 08:08
винда?
notepad.exe frontend/runtime/logs/app.log
Ivan Orlov
@demisang
Dec 08 2017 08:09
@OligarchCat_twitter Попробуй так, если это поможет значит проблема где-то в Yii:
public function actionRss() {
    echo Rss::createRSS();
    die;
}
Кот Олигарха
@OligarchCat_twitter
Dec 08 2017 08:09
@lynicidn юбюнтю
@demisang щазм
lynicidn
@lynicidn
Dec 08 2017 08:09
tail -n 100 frontend/runtime/logs/app.log
где 100 кол-во посл строк
Кот Олигарха
@OligarchCat_twitter
Dec 08 2017 08:11
@demisang при это выводит в хтмл виде, код страницы показывает что впереди пробел :)
@lynicidn Нет такого файла или каталога
lynicidn
@lynicidn
Dec 08 2017 08:12
ЖВ
Кот Олигарха
@OligarchCat_twitter
Dec 08 2017 08:12
@lynicidn там действительно нет файла :)
lynicidn
@lynicidn
Dec 08 2017 08:12
ну так потому что ты в какой папке?
и у тебя адванцед?
Ivan Orlov
@demisang
Dec 08 2017 08:12
@OligarchCat_twitter Значит у тебя какой-то участок кода до вызова экшена выводит пробел :smile:
lynicidn
@lynicidn
Dec 08 2017 08:12
ты хоть чуть свою голову включай :) пути же автокомплитит
Кот Олигарха
@OligarchCat_twitter
Dec 08 2017 08:12
не - я прямо иеархию посмотрел проекта
по пути понял - не в фронтэнде, но путь верный написал. там в папке пусто
щаз через ьс проверю есчо
lynicidn
@lynicidn
Dec 08 2017 08:13
tail -n 100 /path/to/webroot/../runtime/logs/app.log
Кот Олигарха
@OligarchCat_twitter
Dec 08 2017 08:13
МС
lynicidn
@lynicidn
Dec 08 2017 08:14
стопе
Ivan Orlov
@demisang
Dec 08 2017 08:14
@OligarchCat_twitter Глянь на всякий случай файл web/index.php, не ли там какого-нибудь echo ' '; или может быть там в самом начале пробел?)
lynicidn
@lynicidn
Dec 08 2017 08:14
chown -R www-data:www-data /path/to/runtime
service apache2 restart
и снова инициируй ошибку
и логи должны писаться
Ivan Orlov
@demisang
Dec 08 2017 08:15
@OligarchCat_twitter *Перевод строки тоже считается пробелом, т.е. в index.php должно быть сразу:
<?php
...
Кот Олигарха
@OligarchCat_twitter
Dec 08 2017 08:15
@lynicidn дык потом проект будет от юзверя ввв-дата?
lynicidn
@lynicidn
Dec 08 2017 08:15
нет только рантайм
и все вложенные
хотя composer install должен был на них 0777 поставить
Кот Олигарха
@OligarchCat_twitter
Dec 08 2017 08:16
@lynicidn а, логично, ща попробую
lynicidn
@lynicidn
Dec 08 2017 08:16
но мало ли
Кот Олигарха
@OligarchCat_twitter
Dec 08 2017 08:16
@demisang получаеца, что во всех файлах будет этот пробел в коде страницы, верн?
Ivan Orlov
@demisang
Dec 08 2017 08:16
@OligarchCat_twitter Если в index.php то да
@OligarchCat_twitter И ещё на всякий случай проверь здесь свой xml: https://validator.w3.org/feed/#validate_by_input мало ли реально какая синтаксическая ошибка
Кот Олигарха
@OligarchCat_twitter
Dec 08 2017 08:18
@demisang там конкретно на первый символ ругается :)
права на логи 777 - верн?
lynicidn
@lynicidn
Dec 08 2017 08:19
+
Ivan Orlov
@demisang
Dec 08 2017 08:19
@OligarchCat_twitter Ну может быть этот первый символ должен быть другим :shipit:
lynicidn
@lynicidn
Dec 08 2017 08:19
на рантайм и все вложенные
но права пушаться в гит
а владелец нет
Ivan Orlov
@demisang
Dec 08 2017 08:20
@lynicidn Ещё rm -rf / надо сделать :smile:
Кот Олигарха
@OligarchCat_twitter
Dec 08 2017 08:20
@demisang я сравниваю свой с тем рсс что кидал выше - там тупо пробела нет
потом сделал свой вывод как хмл - выкинул в файл - руганулся. потом убрал в этом файле пробел - сразу показал
так.. нжинкс перегрузил
внимание.. момент истины...
Ivan Orlov
@demisang
Dec 08 2017 08:21
эммм т.е. при записи в файл тоже пробел добавлялся?)
Кот Олигарха
@OligarchCat_twitter
Dec 08 2017 08:21
ничо не пишет :))))
@demisang не, я просто скопипастил код страницы
@lynicidn в логах ничего нет
Yaroslav Chernousov
@lavros
Dec 08 2017 08:24
Ещё rm -rf / надо сделать :smile:
и ничего не произойдёт.
Ivan Orlov
@demisang
Dec 08 2017 08:24
@OligarchCat_twitter А у тебя в проекте открывается страница http://site.local/debug/default/index ?
Кот Олигарха
@OligarchCat_twitter
Dec 08 2017 08:25
@demisang lf
да
Ivan Orlov
@demisang
Dec 08 2017 08:25
@lavros А я однажды сделал... когда увольнялся)
@OligarchCat_twitter На этой странице показаны логи каждого запроса, тебе нужно изучить их и посмотреть какие функции вызываются до отображения контента
Кот Олигарха
@OligarchCat_twitter
Dec 08 2017 08:26
@demisang пошел изучать..
ничего эдакого:
11:25:47.999    trace    yii\base\Application::bootstrap    Bootstrap with nodge\eauth\Bootstrap::bootstrap()
11:25:48.000    trace    yii\base\Application::bootstrap    Bootstrap with yii\log\Dispatcher
11:25:48.000    trace    yii\base\Module::getModule    Loading module: debug
11:25:48.001    info    yii\web\Session::open    Session started
11:25:48.001    trace    yii\base\Application::bootstrap    Bootstrap with yii\debug\Module::bootstrap()
11:25:48.002    trace    yii\base\Module::getModule    Loading module: gii
11:25:48.002    trace    yii\base\Application::bootstrap    Bootstrap with yii\gii\Module::bootstrap()
11:25:48.003    trace    yii\web\Application::handleRequest    Route requested: 'site/rss'
11:25:48.003    trace    yii\base\Controller::runAction    Route to run: site/rss
11:25:48.003    trace    yii\base\InlineAction::runWithParams    Running action: ddd\controllers\SiteController::actionRss()
@demisang хехе.. нашел пробел в исходном коде и на других страницах :)
это значит что?
Кот Олигарха
@OligarchCat_twitter
Dec 08 2017 08:33
web/index.php стоит с первой строки
<?php
define..
Andrey Kushnarev
@andku83
Dec 08 2017 08:45
@OligarchCat_twitter все конфиги проверяй
на бекенде тоже пробел присутствует?
Ivan Orlov
@demisang
Dec 08 2017 08:47
@OligarchCat_twitter хз, остаётся только дебажить код, т.е. прямо в самом фреймворке делай echo '123'; die; перед вызовом каждого метода, участвующего в отображении контента и смотри, после какого метода появляется пробел
Andrey Kushnarev
@andku83
Dec 08 2017 08:47
я об этом способе говорил больше часа назад)
Ivan Orlov
@demisang
Dec 08 2017 08:53
@OligarchCat_twitter Кстати в логах есть кое-что интересное, это самая первая строка, где загружается какой-то nodge\eauth\Bootstrap::bootstrap(), советую проверить его на причастность и попробовать отключить
Max
@skmax
Dec 08 2017 08:55
Привет. Парни, а вы на правила валидации тесты пишете?
KarmaBot
@KarmaBot
Dec 08 2017 08:55
О! @skmax! Сто лет не виделись!) Как жизнь молодецкая? Рассказывай :)
Max
@skmax
Dec 08 2017 08:56
стоит подобным заниматься?)
Yaroslav Chernousov
@lavros
Dec 08 2017 09:02
если задача требует, стоит.
а вот как определить требует или нет, это уже другой вопрос -)
Кот Олигарха
@OligarchCat_twitter
Dec 08 2017 09:05
@andku83 да :(
Andrey Kushnarev
@andku83
Dec 08 2017 09:06
@OligarchCat_twitter значит ищи проблему в комммон или вендор
Кот Олигарха
@OligarchCat_twitter
Dec 08 2017 09:06
@andku83 ок, пойду искать
Andrey Kushnarev
@andku83
Dec 08 2017 09:06
composer update делал до того как проблема возникла?
Кот Олигарха
@OligarchCat_twitter
Dec 08 2017 09:13
@andku83 после апдейта скорее всего..
Andrey Kushnarev
@andku83
Dec 08 2017 09:14
тогда вероятнее всего в вендор проблема лежит
Кот Олигарха
@OligarchCat_twitter
Dec 08 2017 09:14
@andku83 а логи апдейта вендора можно где-то посмотреть?
Andrey Kushnarev
@andku83
Dec 08 2017 09:15
есть этот проект на другом компе где не делали update если там все норм, тогда можно сделать update и посмотреть какие пакеты обновились
@OligarchCat_twitter я про логи не знаю(
Кот Олигарха
@OligarchCat_twitter
Dec 08 2017 09:15
да уже везде апдейтнулись..
три сервака - все проапдетились
если у кого на машине только..
Andrey Kushnarev
@andku83
Dec 08 2017 09:16
попробуй поис по проекту ' <?php' вдруг повезет
Кот Олигарха
@OligarchCat_twitter
Dec 08 2017 09:16
щаз попробую..
у всех мозилла новая в убунте тормозит или только у меня?
берет 600 метров из памяти и еще штуки 3-5 WebContent висят по 600 метров..
и все - стояк
nihaha
@nihaha
Dec 08 2017 09:28
у меня мозилла 500 (5-7 вкладок) веб контента три штуки 300/150/75
Stas
@ASYOU99
Dec 08 2017 10:38
подскажите а то что то не соображу выбрать все поля кроме тех у которых значение нал как задать без перечисления каждого поля в нот нал?
Andrey Kushnarev
@andku83
Dec 08 2017 10:41
is not null
но мне кажется ты что-то другое спрашиваешь, переформулируй вопрос
Stas
@ASYOU99
Dec 08 2017 10:42
хочу выбрать строку из базы с типом=1 и что бы в этой выборке были только поля без нула т.е. с контентом
можно сделать епречсеслиение полей но я думаю как то можно по другому одной строкой
без перечисления
Andrey Kushnarev
@andku83
Dec 08 2017 10:43
where type = 1 AND content IS NOT NULL
если под контентом понимается множество полей то без перечисления я не знаю варианта
Stas
@ASYOU99
Dec 08 2017 10:45
вот я за перечисления и имел в виду
т.к. тоже такого ваианта незнаю
Andrey Kushnarev
@andku83
Dec 08 2017 10:47
тебе нужно не выбирать если хотябы одно поле имеет NULL или наоборот - хотя бы одно не имеет NULL ?
Stas
@ASYOU99
Dec 08 2017 10:48
нет мне надо выбрать все поля из той записи но скажем так отфильтровтаь по нулу тоесть что бы я в конце получил поля только с данными
так как ты вначале был с перечислением
если под контентом понимается множество полей то без перечисления я не знаю варианта
Andrey Kushnarev
@andku83
Dec 08 2017 10:50
только в пхп, mysql либо возвращает данные для всех либо для всех не возвращает, результат то табличный
Stas
@ASYOU99
Dec 08 2017 10:50
отож ок спасибо и на том
Ivan Orlov
@demisang
Dec 08 2017 11:17
@ASYOU99 Сколько же у тебя там полей, что лень их прописать?)
Stas
@ASYOU99
Dec 08 2017 11:18
@demisang немного но на будущее хотел узнать есть ли такое
Ivan Orlov
@demisang
Dec 08 2017 11:20
@ASYOU99 Не хотелось бы советовать плохого) Но есть способ получить названия всех полей, не прописывая их:
$tableColumns = Yii::$app->db->schema->getTableSchema('myTable')->getColumnNames();
nihaha
@nihaha
Dec 08 2017 11:28
как отключить вадилацию полей формы, которые прописаны в рулсах? просто не создавать правила?
Ivan Orlov
@demisang
Dec 08 2017 11:29
@nihaha Имеется в виду javasript или ajax валидация?
nihaha
@nihaha
Dec 08 2017 11:30
нет, именно на сервере. у меня при сохранении формы (админка крадом сгенерирована) происходит не переход на страницу view, а просто обновляется страница формы, я думаю, что это из-за валидации полей
Ivan Orlov
@demisang
Dec 08 2017 11:30
@nihaha Динамически не удалить rules(), который уже прописан, но можно пропустить какой-нибудь rule, если у него будет указан scenario отличный от $model->scanario
по-умолчанию моделька имеет scenario = "default", пропиши для своего правила валидации доп. параметр 'on' => ['myScenarioName'] и тогда данное правило будет срабатывать только тогда, когда перед валидацией будет прописано $model->scenario = 'myScenarioName'
Stas
@ASYOU99
Dec 08 2017 11:34

@ASYOU99 Не хотелось бы советовать плохого) Но есть способ получить названия всех полей, не прописывая их:

$tableColumns = Yii::$app->db->schema->getTableSchema('myTable')->getColumnNames();

так все равно потом форычем надо пребирать их и ставить же в условие эт я зна. такую тему думал мож как то еще можно

Ivan Orlov
@demisang
Dec 08 2017 11:34
@ASYOU99 Не, больше никак, я немного погуглил и не нашёл ничего подходящего.
Stas
@ASYOU99
Dec 08 2017 11:35
я тож гуглил потм подумалчто не так гугл.ю и решил здесь спросить как оказалось до такого еще недошли
Ivan Orlov
@demisang
Dec 08 2017 11:35
@nihaha Кстати может быть ты имел в виду, как вообще не делать валидацию а просто сохранить в БД?)
Просто пиши
$model->save(false);
Кот Олигарха
@OligarchCat_twitter
Dec 08 2017 11:36
УРААА!!!!! я нашел пробел!!!!!!!!!!!!!1
@demisang @andku83 спасибо за подсказку!
KarmaBot
@KarmaBot
Dec 08 2017 11:36
Спасибо (+1) для @demisang принято! Текущая карма +15.
Спасибо (+1) для @andku83 принято! Текущая карма +134.
Кот Олигарха
@OligarchCat_twitter
Dec 08 2017 11:36
в конфиге был
Ivan Orlov
@demisang
Dec 08 2017 11:36
@OligarchCat_twitter Ну давай, нам всем интересно теперь узнать где же)
Кот Олигарха
@OligarchCat_twitter
Dec 08 2017 11:36
щаз бу искать кто это накосячил :)))
/config/main.php
Ivan Orlov
@demisang
Dec 08 2017 11:38
@OligarchCat_twitter т.е. там в самом начале перед <?php был пробел или перевод строки?)
Кот Олигарха
@OligarchCat_twitter
Dec 08 2017 11:43
_<?php
вместо знака подчеркивания пробел
Stas
@ASYOU99
Dec 08 2017 11:52
кто накоячил можеш глянуть по аннотации
верни как было и справа клаци на поле где строки стоят и выбери показать аннотацию
image.png
Кот Олигарха
@OligarchCat_twitter
Dec 08 2017 12:18
@ASYOU99 о, спасибо!
KarmaBot
@KarmaBot
Dec 08 2017 12:18
Спасибо (+1) для @ASYOU99 принято! Текущая карма +22.
Stas
@ASYOU99
Dec 08 2017 12:21
@OligarchCat_twitter нашол кто? или мож свое имя увидел?:)
Кот Олигарха
@OligarchCat_twitter
Dec 08 2017 12:21
@ASYOU99 нашел :)))
даже поняли как ент произошло
10.11.2017 еще было
Stas
@ASYOU99
Dec 08 2017 12:22
эт недавно вот когда баги находят которые по полгода висят или год эт да
Andrey Kushnarev
@andku83
Dec 08 2017 12:22
Снимок экрана 2017-12-08 в 14.22.04.png
еще можно вот так
Stas
@ASYOU99
Dec 08 2017 12:25
@andku83 спс ща сгляну для интереса
KarmaBot
@KarmaBot
Dec 08 2017 12:25
Спасибо (+1) для @andku83 принято! Текущая карма +135.
Кот Олигарха
@OligarchCat_twitter
Dec 08 2017 12:30
@andku83 спасибо, прикольная штука :)
KarmaBot
@KarmaBot
Dec 08 2017 12:30
Спасибо (+1) для @andku83 принято! Текущая карма +136.
Кот Олигарха
@OligarchCat_twitter
Dec 08 2017 12:38
кто-то мне может сказать почему нельзя сделать ссылку на ключ массива?
тип можн ссылку сделать на ячейку памяти?
я тут тесты прохожу, ищу пробелы в знаниях :) http://www.quizful.net
Ivan Orlov
@demisang
Dec 08 2017 12:45
@OligarchCat_twitter даже хз как ответить на вопрос почему нельзя) наверное надо подумать над тем, что было бы, если можно было бы)
Наверное надо копать в сторону того, как переменная типа array хранится в памяти, там ответ зарыт)
Кот Олигарха
@OligarchCat_twitter
Dec 08 2017 12:50
@demisang получается у нас в памяти есть участок, помеченный как массив А. данные массива хранятся в размеченном участке. а вот где хранятся ключи? в том же участке памяти получается? получается кусок памяти отмечается как "кей" для данного участка памяти и уже является меткой? а метку на метку сделать нельзя - верно я размышляю?
Ivan Orlov
@demisang
Dec 08 2017 12:54
@OligarchCat_twitter Вот так на самом деле выглядит массив из двух чисел :smile:
{
    nTableSize: 4,
    nTableMask: 3,
    nNumOfElements: 2,
    nNextFreeElement: 91,
    ...,
    arBuckets: [
        NULL,
        NULL,
        0xff0, 
        NULL
    ]
}

0xff0: {
    h: 54,
    pListNext: 0xff2,
    pNext: 0xff2,
    ...
}

0xff2: {
    h: 90,
    pListLast: 0xff0,
    pLast: 0xff0,
    ...
}
KarmaBot
@KarmaBot
Dec 08 2017 12:54
@demisang, чтобы показать длинный листинг кода желательно использовать pastebin-сервис, например gist.github.com или laravel.io/bin.
Ivan Orlov
@demisang
Dec 08 2017 12:55
@OligarchCat_twitter подробнее здесь: https://habrahabr.ru/post/162685/ (но где-то я находил более интересную статью про все типы данных)
@OligarchCat_twitter Выходит что ключи хранятся в виде 0xff0, 0xff2, вроде бы это уже ссылки на участки памяти, но я не могу это утверждать)
Кот Олигарха
@OligarchCat_twitter
Dec 08 2017 12:59
@demisang ну логика у ми такая же примерно :)
Ivan Orlov
@demisang
Dec 08 2017 13:01
@OligarchCat_twitter Но мы оба можем ошибаться :smile:
nihaha
@nihaha
Dec 08 2017 13:46
В каком случае лучше начинать использовать поисковые движки типа сфинкса или эластика? У меня будет каталог товаров объемом до 10000 позиций (сейчас около 3-4К). Поиск будет осуществляться по названию и коду товара.
Кот Олигарха
@OligarchCat_twitter
Dec 08 2017 13:47
@nihaha 10 мало :)
nihaha
@nihaha
Dec 08 2017 13:48
достаточно просто индексы создать на поля поиска?
Кот Олигарха
@OligarchCat_twitter
Dec 08 2017 13:49
@nihaha как вариант
okyselov
@okyselov
Dec 08 2017 13:49
@nihaha если по названию, то уже можешь начинать использовать.
nihaha
@nihaha
Dec 08 2017 13:49
а почему?
okyselov
@okyselov
Dec 08 2017 13:51
@nihaha потому что морфологический поиск, и прочие виды нечеткого поиска
nihaha
@nihaha
Dec 08 2017 13:52
морфологический поиск - это когда с ошибкой слово написал?
okyselov
@okyselov
Dec 08 2017 13:55
@nihaha ошибки, префиксы, суфиксы, окончания
Eugene
@bloodrain777
Dec 08 2017 13:57
Всем привет.
KarmaBot
@KarmaBot
Dec 08 2017 13:57
@bloodrain777, и тебе привет ;)
Eugene
@bloodrain777
Dec 08 2017 13:59

Мужики, подскажите такую каку - чтобы получить модель User авторизированного пользователя нужно

User::findOne(\Yii::$app->user->id); или можно как через компонент получить?

Мне нужно достать реляцию у User
До этого наследовался от компонента web\User и там метод писал который делает User::findOne(\Yii::$app->user->id) теперь как то засомневался
Andrey Kushnarev
@andku83
Dec 08 2017 14:05
@bloodrain777 Yii::$app->user->identity только проверяй на существование
Eugene
@bloodrain777
Dec 08 2017 14:06
@andku83 А через identity можно будет достать реляцию?
Andrey Kushnarev
@andku83
Dec 08 2017 14:06
посмотри кто это
Eugene
@bloodrain777
Dec 08 2017 14:06
@andku83 Туплю спасибо большое
KarmaBot
@KarmaBot
Dec 08 2017 14:06
Спасибо (+1) для @andku83 принято! Текущая карма +137.