These are chat archives for yiisoft/yii2/rus

11th
Nov 2015
Evgeniy Tkachenko
@githubjeka
Nov 11 2015 04:57
Доброе утро!
blob
atcq1
@atcq1
Nov 11 2015 04:58
Dobroe
Alexey Rogachev
@arogachev
Nov 11 2015 05:40
@githubjeka :hand:
Rinat-wc
@Rinat-wc
Nov 11 2015 05:46
Хаерле иртя!
236286
@236286
Nov 11 2015 05:49
Доброе утро
blob.png
Roman
@Skinka
Nov 11 2015 06:16
@githubjeka дядя-внук?
Alex
@Alex-Bond
Nov 11 2015 06:29
КУРЛЫК!
Evgeniy Tkachenko
@githubjeka
Nov 11 2015 06:52
@Skinka (:
Roman
@Skinka
Nov 11 2015 10:11
шо у вас седня не весело
236286
@236286
Nov 11 2015 10:12
@Skinka ну как нет:?
Evgeniy Tkachenko
@githubjeka
Nov 11 2015 10:33

13 33

тройной подбородок
Обама пишет Лукашенко - ты уже 5 выборов выиграл, пришли мне своего менеджера по выборам. Батька отправляет в америку председателя центризбиркома Ермошину. Через месяц звонит и спрашивает - ну как дела? Она ему отвечает - Грыгорыч, приезжайте вы победили,
@Skinka
Roman
@Skinka
Nov 11 2015 10:38
точняк
у вас же выборы прошли?
Rinat-wc
@Rinat-wc
Nov 11 2015 10:38
@githubjeka ыыы
Evgeniy Tkachenko
@githubjeka
Nov 11 2015 10:38
да, Грыгорыч победил
Roman
@Skinka
Nov 11 2015 10:39
ну это до скончания)
Evgeniy Tkachenko
@githubjeka
Nov 11 2015 10:39
менеджера?
Roman
@Skinka
Nov 11 2015 10:39
странно что амеры к вам не прибигали и с плакатами не бегали
у вас наверное и опозиции нет)
Evgeniy Tkachenko
@githubjeka
Nov 11 2015 10:39
ну они же к нашим берегам собирались отправить свой флот
Roman
@Skinka
Nov 11 2015 10:39
ну ды
Evgeniy Tkachenko
@githubjeka
Nov 11 2015 10:39
берега попутали
все деньги на Украину потратили этом году.
Rinat-wc
@Rinat-wc
Nov 11 2015 10:40
Медведев Обама и Лукашенко оказались на плоту в октрытом море. Обама и Медведев не хотят грести-мол сверхдержавы. Лукошенко предложил проголосовать. Итог - гребут Медведь и Обамыч. Один другого спрашивает: - "Вот я понять не могу, нас тут трое, а за Лукошенко четверо проголосовало"
Evgeniy Tkachenko
@githubjeka
Nov 11 2015 10:40
ну это всемизвестный анекдот )
Rinat-wc
@Rinat-wc
Nov 11 2015 10:40
@githubjeka шестой флот
Evgeniy Tkachenko
@githubjeka
Nov 11 2015 10:42
повеселились - пойдём работать.
тут я задал вопрос, никто ниче не знает :(
Rinat-wc
@Rinat-wc
Nov 11 2015 10:48
@RSalo трейлер видел?))
Roman Salnikov
@RSalo
Nov 11 2015 10:49
@Rinat-wc Оо, еще и трейлер есть?=)
огонь)))
@RSalo смотри))
чот мы не в том канале спамим(
Roman Salnikov
@RSalo
Nov 11 2015 10:52
заставка напомнила
https://www.youtube.com/watch?v=unJVyQ86nuQ
Roman
@Skinka
Nov 11 2015 11:00
ребятки подскажите чтонить красивое для смены вида селекта
Evgeniy Tkachenko
@githubjeka
Nov 11 2015 11:04
select2
от Jul 22, 2014
последняя нормальная фиксация
select2 лучше всё таки
Roman Salnikov
@RSalo
Nov 11 2015 11:05
@githubjeka да хоть 2013. главное, чтобы чотенько работал и по красоте был
Evgeniy Tkachenko
@githubjeka
Nov 11 2015 11:06
не знаю баги есть и не фиксятся
так что select2 лучше
Roman Salnikov
@RSalo
Nov 11 2015 11:06
тогда да
Evgeniy Tkachenko
@githubjeka
Nov 11 2015 11:07
я пробовал select2 заменить на что то, лучше нет
Roman
@Skinka
Nov 11 2015 11:07
да я думал что нить чтобы обычный и менялось при помощи цсс
Roman Salnikov
@RSalo
Nov 11 2015 11:08
@Skinka что-нибудь обычным цссом сделать с селектом не особо получится
Evgeniy Tkachenko
@githubjeka
Nov 11 2015 11:08
уголки скруглить можно
Roman Salnikov
@RSalo
Nov 11 2015 11:08
если что-то делать, то уже надо делать селект в списке
Roman
@Skinka
Nov 11 2015 11:08
не люблю круглые уголки
Roman Salnikov
@RSalo
Nov 11 2015 11:08
@githubjeka ну только что=)
Roman
@Skinka
Nov 11 2015 11:09
все не то пацаны)
как подключить к компосеру? https://github.com/flatlogic/awesome-bootstrap-checkbox
Roman
@Skinka
Nov 11 2015 11:15
@RSalo @githubjeka
Evgeniy Tkachenko
@githubjeka
Nov 11 2015 11:16
bower install "awesome-bootstrap-checkbox"
Roman
@Skinka
Nov 11 2015 11:17
а в компосер как прописать?
Evgeniy Tkachenko
@githubjeka
Nov 11 2015 11:17
какой компосер
Roman
@Skinka
Nov 11 2015 11:17
в уии
Evgeniy Tkachenko
@githubjeka
Nov 11 2015 11:17
кампосер не умеет работать с bower пакетами
Roman
@Skinka
Nov 11 2015 11:17
ну как так
плагин то есть
для установки
Evgeniy Tkachenko
@githubjeka
Nov 11 2015 11:17
удали его
и не приставай ко мне с этим плагином, все нервы он мне выматал
Roman
@Skinka
Nov 11 2015 11:18
Problem 1
- The requested package bower/awesome-bootstrap-checkbox could not be found in any version, there may be a typo in the package name.
Rinat-wc
@Rinat-wc
Nov 11 2015 11:18
@RSalo ссылка открывается onclick="return popup(this, 750, 600)". Мне нужно проверить что у открытой ссылки определенный url $I->seeInCurrentUrl('select_user.php');. А он как будто находится не во всплывающем окне, а в вызываемом. Как такое тестится?
Evgeniy Tkachenko
@githubjeka
Nov 11 2015 11:18
начинается
Roman
@Skinka
Nov 11 2015 11:18
яж получается не правильно прописываю
Evgeniy Tkachenko
@githubjeka
Nov 11 2015 11:18
@Skinka vendor удали весь
и заново пробуй
Roman
@Skinka
Nov 11 2015 11:18
вендор до этого перекачивал
Evgeniy Tkachenko
@githubjeka
Nov 11 2015 11:18
кривой глюченный плагин
удали вендор говорю
composer.lock
и заново запускай
и bower установи и юзай
хотя бы у себя в проекте
а картика на кол, всех на кол
Roman
@Skinka
Nov 11 2015 11:20
не хочу
картика не юзаю)
Evgeniy Tkachenko
@githubjeka
Nov 11 2015 11:21
всех кто юзает bower-asset на кол
Roman
@Skinka
Nov 11 2015 11:21
удалил не изменилось
Evgeniy Tkachenko
@githubjeka
Nov 11 2015 11:21
бывает
Roman Salnikov
@RSalo
Nov 11 2015 11:22
@Rinat-wc что-то типа того попробуй
 public function findElement($xpath)
    {
        $webDriver = $this->getModule('WebDriver')->webDriver;
        $elem = $webDriver->findElement(\WebDriverBy::selector(xpath));

        return $elem;
    }
Rinat-wc
@Rinat-wc
Nov 11 2015 11:22
эм
Roman
@Skinka
Nov 11 2015 11:22
ай так засуну
Rinat-wc
@Rinat-wc
Nov 11 2015 11:24
я перехожу по ссылке всплывающей методом click(xPath)
для чего код написанный выше? как и где его применить?
Roman Salnikov
@RSalo
Nov 11 2015 11:26
@Rinat-wc этим кодом ты получаешь элемент со всплывающего окна
чекни, а то я могу ошибаться
Rinat-wc
@Rinat-wc
Nov 11 2015 11:37
@RSalo а this ссылка на что? у меня все в Cest классах
Vitaly
@hellvesper
Nov 11 2015 13:47
ping
@githubjeka я юзаю
Vitaly
@hellvesper
Nov 11 2015 13:52
а как не юзать?
Максим
@maxyc
Nov 11 2015 14:15
А как в yii2/migrations сделать fulltext индекс?
Roman
@Skinka
Nov 11 2015 14:26
@maxyc наверно както sqlем

ребятки совсем потерялся

['label' => Yii::t('shop', 'Name'), 'attribute' => 'profile.fullName', 'filter' => ''],

что написать в фильтре чтобы появился инпут?

Roman
@Skinka
Nov 11 2015 14:42
как фильтр включить по релейшену? шото мозг кипит! наверное погода действует
Vitaly Voskobovich
@voskobovich
Nov 11 2015 14:57
@Skinka что именно тебе нужно?

@Skinka

['filter' => ['One', 'Two'],]

Так ты покажешь в гриде выпадающий список в шапке колонки

а потом в методе уже реализовывай логику поиска
Максим
@maxyc
Nov 11 2015 15:06
вот блин, никто не знает :(
Vitaly Voskobovich
@voskobovich
Nov 11 2015 15:33
@236286 ты категорию в корзину запихиваешь, это норм?
236286
@236286
Nov 11 2015 15:34
@voskobovich Да
я этого и хочу
Vitaly Voskobovich
@voskobovich
Nov 11 2015 15:35
@236286 колупал библиотеку эту? смотрел что там за логика у нее? пробовал дебажить сам?
236286
@236286
Nov 11 2015 15:38
@voskobovich ну вот именно var dump не олучается даже
Vitaly Voskobovich
@voskobovich
Nov 11 2015 15:38
@236286 что значит не получается?
236286
@236286
Nov 11 2015 15:39
@voskobovich думаю может самому написать даже, мне же не надо на категорию цену показывать
@voskobovich не вводит вообще даже
@voskobovich я смотрю код в том репозитории. ты когда делаешь
\Yii::$app->cart->put($addcategory);
то та библиотека тебе данные в сессию добавляет
if ($this->storeInSession)
$this->saveToSession();
в базу ничего не идет. вытягивай данные теперь с сессии
делаю дамп ниче не выходит, не ясно
Vitaly Voskobovich
@voskobovich
Nov 11 2015 15:40
@236286 ты разобрался как работает та либа, которую ты используешь?
@236286 найди то место где все ломается
236286
@236286
Nov 11 2015 15:41
@voskobovich вот че-та не могу найти
думаю, кто посоветуют типа такую же
Vitaly Voskobovich
@voskobovich
Nov 11 2015 15:41
@236286 за тебя это место не найдет ни кто)
Максим
@maxyc
Nov 11 2015 15:42
Ребят, что за синтаксис в php <<< text , не знаю что в гугле искать
236286
@236286
Nov 11 2015 15:42
@voskobovich ну ок, а другая либа есть
Vitaly Voskobovich
@voskobovich
Nov 11 2015 15:42
@236286 в другой тоже могут быть ошибки. Смена либы не самый лучший путь.
@maxyc ну эт типа чтобы писать многострочные куски кода\текста если я правильно помню, то юзается это вот так
$var = <<<TEXT
строка 1
строка 2
строка 3
TEXT;
Так же есть вроде еще <<<HTML и <<<JS
Максим
@maxyc
Nov 11 2015 15:44
да знаю. не пользовался никогда, но ща надо. а как найти хз
спасибо. оно самое
Vitaly Voskobovich
@voskobovich
Nov 11 2015 15:44
я выше написал как пользоватся))
Максим
@maxyc
Nov 11 2015 15:44
да да спасибо
Vitaly Voskobovich
@voskobovich
Nov 11 2015 15:45
там важно чтобы закрывающий тэг был с начала строки, иначе все по бороде пойдет)
Максим
@maxyc
Nov 11 2015 15:45
а там имеет какое то значение text, js, html ? он его как то обрабатывает?
Vitaly Voskobovich
@voskobovich
Nov 11 2015 15:45
@maxyc и я сколько раз не применял… фигня получается. Не советую это юзать если надо в код переменные ставить)
Максим
@maxyc
Nov 11 2015 15:46
@voskobovich у меня в коде надо вставить js скрипт... а все скрипты в конце файла.
Vitaly Voskobovich
@voskobovich
Nov 11 2015 15:47
@maxyc yii2 ?
Максим
@maxyc
Nov 11 2015 15:48
lf
да
Vitaly Voskobovich
@voskobovich
Nov 11 2015 15:48
@maxyc $this->registerJs();
@maxyc надеюсь ты потом через функцию выше опубликуешь JS код)
Максим
@maxyc
Nov 11 2015 15:51
$js = <<<JS
    Morris.Area({
        element: 'area-example',
        data: [
            { y: '2006', a: 100, b: 90 },
            { y: '2007', a: 75,  b: 65 },
            { y: '2008', a: 50,  b: 40 },
            { y: '2009', a: 75,  b: 65 },
            { y: '2010', a: 50,  b: 40 },
            { y: '2011', a: 75,  b: 65 },
            { y: '2012', a: 100, b: 90 }
        ],
        xkey: 'y',
        ykeys: ['a', 'b'],
        labels: ['Series A', 'Series B'],
        lineWidth: 0,
        pointSize: 0,
        axes: false,
        grid: false,
        resize: true
    });
JS;

$this->registerJs($js, [
        'depends'=>\backend\themes\basic\AppAsset::className()
    ]
);
что то типа такого
Vitaly
@hellvesper
Nov 11 2015 15:52
@maxyc @voskobovich это heredoc называется, я всегда его применяю, удобно что шторм подсвечивает код внутри как нативнй
http://php.net/manual/ru/language.types.string.php#language.types.string.syntax.heredoc
Максим
@maxyc
Nov 11 2015 15:53
@hellvesper спс. пойду почитаю
Vitaly
@hellvesper
Nov 11 2015 15:53
$this->registerJs(<<<'MASONRY'

    var container = document.querySelector('.list-items');
    var msnry = new Masonry(container, {
        // options
        itemSelector: '.item',
        gutter: 2
    });



    Ias.on('rendered', function(items) {
        msnry.appended(items);
    });

    /*ias.extension(new IASSpinnerExtension());
    ias.extension(new IASNoneLeftExtension({
        html: '<div class="ias-noneleft" style="text-align:center"><p><em>You reached the end!</em></p></div>'
    }));*/
MASONRY
, \yii\web\View::POS_LOAD);
я так прям делаю. Ну тут у меня конкретно nowdoc, работает как одинарные кавычки, а хередок аналог двойных кавычек
Vitaly Voskobovich
@voskobovich
Nov 11 2015 15:54
@hellvesper оч не удобно потому что JQuery переменные типа $el = $(‘.class’); в php файле считаются PHP переменными и заменяются на свойства этих переменных… херится кароче есть JS код(
Vitaly
@hellvesper
Nov 11 2015 15:54
закрывающий тег не просто с новой строки, плюс перед ним не должно быть ни пробелов ничего, и после него тоже
Vitaly Voskobovich
@voskobovich
Nov 11 2015 15:54
@hellvesper конкатенация обычная на порядок надежнее)
@hellvesper как по мне)
@hellvesper так же форматировать код с этой штукой не получится по причине которую ты написал в последнем сообщении
Vitaly
@hellvesper
Nov 11 2015 15:55
@voskobovich есть такое, ну там можно экранировать и т.д. и вообще это проблема самого registerJs и вывода скриптов как строковой переменной
Максим
@maxyc
Nov 11 2015 15:56
Illegal offset type
эм
Vitaly Voskobovich
@voskobovich
Nov 11 2015 15:56
if ($publicJs) {
$this->registerJs(<<<JS

    var container = document.querySelector('.list-items');
    var msnry = new Masonry(container, {
        // options
        itemSelector: '.item',
        gutter: 2
    });

    Ias.on('rendered', function(items) {
        msnry.appended(items);
    });

    /*ias.extension(new IASSpinnerExtension());
    ias.extension(new IASNoneLeftExtension({
        html: '<div class="ias-noneleft" style="text-align:center"><p><em>You reached the end!</em></p></div>'
    }));*/
JS
, \yii\web\View::POS_LOAD);
}
Vitaly
@hellvesper
Nov 11 2015 15:56
@voskobovich для таких случаев чтобы пых не считал переменной как раз nowdoc подойдет, но туда уже точно не вставить пыховскую переменную
вроде бы в yii еще можно клипами оборачивать код
Vitaly Voskobovich
@voskobovich
Nov 11 2015 15:58
@hellvesper эт че такое?
Vitaly
@hellvesper
Nov 11 2015 15:58
мне как-то давно когда я на этот костыль наткнулся советовали так
Vitaly Voskobovich
@voskobovich
Nov 11 2015 16:01
@hellvesper большие объемы кода надо в файлы выносить) нечего их писать во вьюхах
Vitaly
@hellvesper
Nov 11 2015 16:01
@voskobovich ну большие да
а всякие события иниты и прочее можно и так
мне иногда тупо лень выносить)
Konstantin Sirotkin
@beowulfenator
Nov 11 2015 16:25
кто-кто в теремочке живет?
столкнулся с загадочной проблемой - Yii::$app->security->generateRandomString()
вроде ж все правильно, и use Yii вверху файла есть
при этом получаю Undefined variable: app
как же так?
236286
@236286
Nov 11 2015 16:38
ребята помогите
хелп ми
:)
public function actionAdd($id)
{
    $item = Category::findOne($id);
    $session = Yii::$app->session;
    $session->set('item', $item);
    return $this->render('list',['item' => Yii::$app->session->get("item")]);
    }
это в index
<?= Html::a('Add',  ['site/add', 'id'=>$item->'3'], ['class' => 'btn btn-success'])?>
а это во вью list
<p>Вы добавили категорию себе <a href="<?= Yii::$app->urlManager->createUrl(['site/add', 'item' => $item]) ?>"><?=$item ?>:</a></p>
Pavel Sokolov
@ComradePashka
Nov 11 2015 16:46
привет. слушайте ребят, у меня есть ряд вопросов по Yii, но не хочется особо флудить на форуме, хотя может оно и было бы полезно
samdark, как я понимаю тут постоянно? :)
Alexander Makarov
@samdark
Nov 11 2015 16:53
бываю
Pavel Sokolov
@ComradePashka
Nov 11 2015 16:54
вобщем я изначально читал оффдоки на английском - оно мне както ближе, потом переглянул русскую версию. у нас везде фигурируют именования классов.. как это правильно называется - не full qualified вроде как в соответствии с недоступностю этого метода в ранних версиях php, если я ничего не путаю. ну с этим все понятно, но наверное имеет смысл подчеркнуть где-то отдельно, чтоб путаницы не было
Konstantin Sirotkin
@beowulfenator
Nov 11 2015 16:55
недоступностью какого метода?
Akhristenko
@Akhristenko
Nov 11 2015 16:55
человек видимо про namespaces говорит
Pavel Sokolov
@ComradePashka
Nov 11 2015 16:55
ну указания имен классов
Akhristenko
@Akhristenko
Nov 11 2015 16:56
которых до 5.3 не было
Alexander Makarov
@samdark
Nov 11 2015 16:56
ссылку можно на гайд?
вообще в реальном коде FQN не используются
используются use
Konstantin Sirotkin
@beowulfenator
Nov 11 2015 16:56
т.е. ActiveForm вместо \yii\widgets\ActiveForm?
Pavel Sokolov
@ComradePashka
Nov 11 2015 16:56
угу. типа CWidget vs \yii\widgets\
Konstantin Sirotkin
@beowulfenator
Nov 11 2015 16:57
так там вверху сначала пишется use yii\widgets\ActiveForm, а дальше уже в тексте просто ActiveForm
и понятно, и логично
Akhristenko
@Akhristenko
Nov 11 2015 16:57
@samdark вот кстати не все и не всегда. Есть крупные проекты, где используется FQCN.
@beowulfenator в этом подходе есть минусы. Хреново работает копипаст. Особенно если идет use \Smth\Class as OtherClass;
Alexander Makarov
@samdark
Nov 11 2015 16:58
нефиг копипастить :)
Pavel Sokolov
@ComradePashka
Nov 11 2015 17:00
ну это мелочь, но я говорю как раз чтоб люди не путались возможно стоит гдето отдельно описать как вообще бывает, какие best practices есть, просто я вот почитал оффы на английской версии потом смотрю http://yiiframework.ru/ и некоторые другие примеры нагугливаю а там сплошь и рядом CClassName, по началу даже засомневался, а точно ли это одно и то же? :)
можете помочь ребята
:(
Akhristenko
@Akhristenko
Nov 11 2015 17:01
@ComradePashka ты читаешь доки к разным версиям фреймворка. CClassName это первая версия.
Pavel Sokolov
@ComradePashka
Nov 11 2015 17:01
во! т.е. все-таки не ошибся, а что по Yii2 получается доки в процессе перевода пока что?
Akhristenko
@Akhristenko
Nov 11 2015 17:02
Вообще, имхо, лучше читать документацию на языке оригинала.
Konstantin Sirotkin
@beowulfenator
Nov 11 2015 17:02
нет, просто почему-то никто так и не развернул точно такую же доку на русском
она в md-файлах есть, а с красивым веб-интерфейсом, как английская, нету
да и там почти все переведено
Pavel Sokolov
@ComradePashka
Nov 11 2015 17:05
ну я тож так думаю :) так вот. второй вопрос. по виджетам, точнее по вариантам их использования. как я понимаю существует два подхода - брать какойнить например jQuery UI - оборачивать в собственно виджет полностью, тюнинговать под свои нужды и использовать. либо брать уже завернутые кем-то с помощью composer - так?
Akhristenko
@Akhristenko
Nov 11 2015 17:05
Угу.
Pavel Sokolov
@ComradePashka
Nov 11 2015 17:06
собственно как раз jui и bootstrap уже в поставку входят таким образом. ок. у меня просто хостинг VDS от руцентра и там пляски вокруг composer до сих пор продолжаются
Akhristenko
@Akhristenko
Nov 11 2015 17:06
Я далек от реального мира. А простая впска намного дороже хостинга?
Pavel Sokolov
@ComradePashka
Nov 11 2015 17:09
ну эт не мое хозяйства, я думаю есть намного более комфортные условия чем у руцентра. в принципе у меня все большее желание появляется форсировать переезд, там еще раньше были интересные моменты от них :) но пока еще терпения хватает
Konstantin Sirotkin
@beowulfenator
Nov 11 2015 17:12
без шелла вообще и композера в частности развертывание проекта превратится в кромешный ад
Pavel Sokolov
@ComradePashka
Nov 11 2015 17:12
ну если мне все же НЕ удасться довести поведение composer до 100% вменямого состояния, то в принципе необходимые готовые виджеты я могу хоть git хоть wget утягивать и прикручивать?
вот на этот счет бы годную статейку почитать
Maxim
@Big-Shark
Nov 11 2015 17:13
@ComradePashka статейка для извращенцев
Konstantin Sirotkin
@beowulfenator
Nov 11 2015 17:14
почему, где-то в гайде было про деплой на shared hosting
@ComradePashka не виджеты - а вообще все зависимости
например, сам фреймворк тянет целый паровоз зависимостей
в том числе, например, bootstrap через bower
поэтому обычно несчастные люди где-то на нормальной машине все-таки запускают композер, а потом переливают по (s)ftp :(
Pavel Sokolov
@ComradePashka
Nov 11 2015 17:16
эм.. ну почему, внутренне устройство не похо бы понимать. выходит отбери у человека композер - и все? сели в лужу? :) блин, только что обновил панель управления на nic.ru - у них там работы очередные :) надеюсь композер чинят! :D
Maxim
@Big-Shark
Nov 11 2015 17:17
эмм, и как ты его отберешь?
Konstantin Sirotkin
@beowulfenator
Nov 11 2015 17:17
да нет, с внутренним устройством как раз все понятно - содержимое директории vendor должно соответствовать необходимому
и должен быть правильно настроен автолоадер
Pavel Sokolov
@ComradePashka
Nov 11 2015 17:19
ну я имею гипотетическую ситуацию когда нужно реализовать разертывание фреймворка в среде сильно ограниченной. это так - прикол. типа как у некоторых современных автомобилистов, забрать GPS и они никуда доехать не смогут
*ввиду
Konstantin Sirotkin
@beowulfenator
Nov 11 2015 17:20
на нормальной машине все-таки запускают композер, а потом переливают по (s)ftp
Pavel Sokolov
@ComradePashka
Nov 11 2015 17:21
ну да. как костыль. а статейку я имел ввиду по самостоятельному прикручиванию виджетов для которых нет yii-вропперов.
Konstantin Sirotkin
@beowulfenator
Nov 11 2015 17:22
сначала надо сделать asset
Pavel Sokolov
@ComradePashka
Nov 11 2015 17:22
ребят, а еще вопрос, я в этом чатике впервые, да и вообще на гитхабе вроде сегодня зарегился - тут история сохраняется если я позже зайду?
Konstantin Sirotkin
@beowulfenator
Nov 11 2015 17:22
вроде да
и поиск по ней есть
Pavel Sokolov
@ComradePashka
Nov 11 2015 17:24
о, хорошо. а то надо убежать, чет не вовремя я заскочил. всем добра - до скорого! :)
Akhristenko
@Akhristenko
Nov 11 2015 18:13
Если мы сначала читаем запись из базы, а потом её меняем и сохраняем и делаем это в транзакции то это потенциальный дедлок. Чтобы исключить ситуацию, надо при запросе данных указывать FOR UPDATE. Теперь вопрос: а можно это как-то поверх AR провернуть?
Pavel Sokolov
@ComradePashka
Nov 11 2015 18:23
я вернулся. еще вопросик. в некоторых доках фигурирует утилита yiic но в шаблонах basic и advanced я ее не обнаружил. она тоже к предыдущим веткам (не yii2) относится?
236286
@236286
Nov 11 2015 18:24
Undefined variable: categoryadd <?php foreach ($categoryadd as $item):?>
а в экшене
  return $this->render('index', 
        ['categoryadd' => $categoryadd]);
}
ЭТО ОЧЕНЬ СТРАННО :(
Konstantin Sirotkin
@beowulfenator
Nov 11 2015 18:25
@ComradePashka да
вот нормальные доки
все остальное - это какая-то ерунда
236286
@236286
Nov 11 2015 18:31
что-то очень тсранное творится тут у меня :(
236286
@236286
Nov 11 2015 18:48
2015-11-12-014644_1280x1024_scrot.png
подскажите, что значит эта ошибка?
236286
@236286
Nov 11 2015 19:02
public function actionAdd($id) и return $this->render('list',
может так быть?
или должен быть actionAdd($id) и return $this->render('add',
Roman Salnikov
@RSalo
Nov 11 2015 19:06
ну что чуваки, как оно?
236286
@236286
Nov 11 2015 19:06
@RSalo :(
все супер :(
Akhristenko
@Akhristenko
Nov 11 2015 19:37
@beowulfenator а ответ на сой вопрос про ар и транзакции ты не знаешь?
Yii Gitter Bot
@YiiBot
Nov 11 2015 19:37
Let's rock! GitterBot is here!
GitterBot shutting down. Bye!
236286
@236286
Nov 11 2015 19:43
@YiiBot спасибо
@RSalo спасибо
Stas So
@swods
Nov 11 2015 20:08
Вопрос, как бы вы реализовали такую вещь:
У вас есть список записей, они отфльтрованы фильтром который над списком. Есть кнопка редактировать запись, нажимаем на нее, редактируем, сохраняем и нужно вернуться на страницу списка с теми же параметрами фильтра которые были когда мы нажимали редактировать.
Roman Salnikov
@RSalo
Nov 11 2015 20:12
@swods кукисы не подойдут?
Stas So
@swods
Nov 11 2015 20:13
@RSalo думал в сессию, в целом просто хотел увидеть какие варианты посоветуете... я могу и в файл записывать xD
оооо точно, есть же в ии такая штука, позволяет запомнить страницу с которой приперся, вроде как полную ссылку
Roman Salnikov
@RSalo
Nov 11 2015 20:14
@swods да не стоит думаю лишние ресурсы на сессии тратить. тупо если есть кукисы с нужным именем, то сразу подгружать страницу с нужными параметрами
Stas So
@swods
Nov 11 2015 20:14
а потом на нее можно редиректнуть
Roman Salnikov
@RSalo
Nov 11 2015 20:14
не знаю, получится ли твой вариант
но попробуй=)
Stas So
@swods
Nov 11 2015 20:14
@RSalo спасибо, будем смотреть и пробовать
Максим
@maxyc
Nov 11 2015 20:16
Парни
Есть таблица статистики. нужно вывести кол-во записей по дням и по ip
два запроса сделал. один группирует только по типу события. второй по хитам
как бы мне это одним запросом
(
                SELECT
                    COUNT(*) as count_views,
                    DATE_FORMAT(
                        FROM_UNIXTIME(created_at),
                        \'%Y-%m-%d\'
                    ) as date
                FROM
                    '.self::tableName().'
                WHERE
                    created_at BETWEEN :time_start AND :time_end
                GROUP BY
                    type,
                    date
            )

            UNION

            (
                SELECT
                    COUNT(*) as count_users,
                    DATE_FORMAT(
                        FROM_UNIXTIME(created_at),
                        \'%Y-%m-%d\'
                    ) as date
                FROM
                    '.self::tableName().'
                WHERE
                    created_at BETWEEN :time_start AND :time_end
                GROUP BY
                    type,
                    user_ip,
                    date
            )
Stas So
@swods
Nov 11 2015 20:19
@maxyc я извращенец и вывел бы все записи, после чего форичем пересобрал бы массив причем делается достаточно быстро $arr[$date][$ip][]...
Максим
@maxyc
Nov 11 2015 20:21
А что ты будешь делать с миллионами записей?
Stas So
@swods
Nov 11 2015 20:22
@maxyc стреляться
Максим
@maxyc
Nov 11 2015 20:22
)
Stas So
@swods
Nov 11 2015 20:25
@maxyc серьезно, я когда то много чего мог написать на SQL, но как сменил профф на пхп программиста, с тех.под. базы данных, сразу как то отпали все знания
у меня теперь запросы в основном News::findAll(['user_id'=>Yii::$app->user->id]);
Максим
@maxyc
Nov 11 2015 20:27
я тож через это прошел
atcq1
@atcq1
Nov 11 2015 20:37
Вопрос, как бы вы реализовали такую вещь:
У вас есть список записей, они отфльтрованы фильтром который над списком. Есть кнопка редактировать запись, нажимаем на нее, редактируем, сохраняем и нужно вернуться на страницу списка с теми же параметрами фильтра которые были когда мы нажимали редактировать.
все параметры в гете?
Stas So
@swods
Nov 11 2015 20:40
@atcq1 да
atcq1
@atcq1
Nov 11 2015 20:40
какой нибудь $controller->sendBackUrl ?
Stas So
@swods
Nov 11 2015 20:41
@atcq1 вот я тоже о чем то таком думал
atcq1
@atcq1
Nov 11 2015 20:41
а потом $controller->goBack?
Stas So
@swods
Nov 11 2015 20:42
Url::remember(Url::current()); а потом $this->redirect(Url::previous());
@atcq1 затестил мой вариант, пашет =^。^=
atcq1
@atcq1
Nov 11 2015 20:45
Stas So
@swods
Nov 11 2015 20:46
@atcq1 все хотел узнать а где тут смайлы
atcq1
@atcq1
Nov 11 2015 20:46
набери двоеточие
Stas So
@swods
Nov 11 2015 20:46
@samdark пожалуйста скажи, можно ли так делать и правильно это ты же гуру =З
Alexander Makarov
@samdark
Nov 11 2015 20:46
как?
с какого места читать?
Stas So
@swods
Nov 11 2015 20:47

@samdark

Вопрос, как бы вы реализовали такую вещь:
У вас есть список записей, они отфльтрованы фильтром который над списком. Есть кнопка редактировать запись, нажимаем на нее, редактируем, сохраняем и нужно вернуться на страницу списка с теми же параметрами фильтра которые были когда мы нажимали редактировать.

Url::remember(Url::current()); а потом $this->redirect(Url::previous());
atcq1
@atcq1
Nov 11 2015 20:47
@samdark у меня тоже к гуру вопрос будет )
после
Stas So
@swods
Nov 11 2015 20:47
все фильтры в гете
Alexander Makarov
@samdark
Nov 11 2015 20:47
запись жирная?
Stas So
@swods
Nov 11 2015 20:47
@samdark нет максимум 6 параметров
Alexander Makarov
@samdark
Nov 11 2015 20:47
вся показывается в списке или только title?
Stas So
@swods
Nov 11 2015 20:48
вся в адресную влезает
@samdark п.с. я же правильно понял что ты про ссылку спросил с гет параметрами или я не о том подумал?
Alexander Makarov
@samdark
Nov 11 2015 20:53
нет
я про элемент списка
он показывает всё, что надо редактировать, или нет?
Alexander Makarov
@samdark
Nov 11 2015 20:57
инлайновое запилить?
Stas So
@swods
Nov 11 2015 20:57
@samdark если на страницу эту поместить Url::remember(Url::current()), он запоминает все, включая get параметры
если потом в экшенАпдейт закинуть $this->redirect(Url::previous()); то в теории все должно быть ок, и перекинуть должен на страницу со списком отфильтрованным как перед редактированием
@samdark я тебя не понимаю :worried:
примерно так
Stas So
@swods
Nov 11 2015 20:59
@samdark аа понял, да это супер, так могу. Тут просто задача стоит именно как я написал )
Akhristenko
@Akhristenko
Nov 11 2015 21:00
@samdark а вообще можно используюя AR указать, чтобы оно выбирало запись дописывая в конец FOR UPDATE?
Alexander Makarov
@samdark
Nov 11 2015 21:00
ну а так да
через remember
Stas So
@swods
Nov 11 2015 21:01
@samdark спасибо! :+1:
Alexander Makarov
@samdark
Nov 11 2015 21:01
@Akhristenko нет
это нестандартный SQL
atcq1
@atcq1
Nov 11 2015 21:01
@samdark вопрос к гуру, мне нужно в одной точке входа (frontend) поддерживать несколько разных классов identity, присваивая конкретный в зависимости от определенных параметров юзера
@samdark сейчас подсовываю нужный класс через переопределенный findIdentity
@samdark правильно ли так делать?
Alexander Makarov
@samdark
Nov 11 2015 21:02
нормально
atcq1
@atcq1
Nov 11 2015 21:03
@samdark отпустил мои грехи. спасибо :smile:
Akhristenko
@Akhristenko
Nov 11 2015 21:04
печально =\
atcq1
@atcq1
Nov 11 2015 21:05
@samdark а вообще можно используюя AR указать, чтобы оно выбирало запись дописывая в конец FOR UPDATE?
а зачем это нужно?
Akhristenko
@Akhristenko
Nov 11 2015 21:05
Одна из рекомендаций по избеганию дедлоков.
Konstantin Sirotkin
@beowulfenator
Nov 11 2015 21:06
такое чувство, что это не задача AR, а задача AQ
ActiveQuery в смысле
Alexander Makarov
@samdark
Nov 11 2015 21:06
@Akhristenko локи явно зато можно делать
Akhristenko
@Akhristenko
Nov 11 2015 21:06
Эм?
Alexander Makarov
@samdark
Nov 11 2015 21:07
ну, FOR UPDATE — это же лок на уровне строки
Akhristenko
@Akhristenko
Nov 11 2015 21:08
Не обязательно на уровне строки. Это захват write lock.
А что значит локи явно можно делать?
Akhristenko
@Akhristenko
Nov 11 2015 21:11
@samdark так что ты имел в виду, когда говорил, что локи явно можно делать?
Akhristenko
@Akhristenko
Nov 11 2015 21:14
уровень изоляции это ведь немного другое
Alexander Makarov
@samdark
Nov 11 2015 21:20
ну, немного :)
в общем, в Yii просто так FOR UPDATE не сделать
точнее в AR не сделать...
потому как MySQL-only фича
Максим
@maxyc
Nov 11 2015 21:22
@samdark раз уж тут
Konstantin Sirotkin
@beowulfenator
Nov 11 2015 21:22
а что тут сложного - просто будет не все везде поддерживаться
Максим
@maxyc
Nov 11 2015 21:22
как сделать в миграциях FULLTEXT INDEX?
Konstantin Sirotkin
@beowulfenator
Nov 11 2015 21:23
вон - в ElasticSearch половина фич не работает
и ничего
Akhristenko
@Akhristenko
Nov 11 2015 21:23
@samdark в postgresql тоже есть for update
Konstantin Sirotkin
@beowulfenator
Nov 11 2015 21:24
почему бы не посмотреть, как в AR/AQ оформлено distinct и сделать это по аналогии? :)
вот тут
Alexander Makarov
@samdark
Nov 11 2015 21:26
@maxyc через SQL :)
Konstantin Sirotkin
@beowulfenator
Nov 11 2015 21:26
@Akhristenko $selectOption string Additional option that should be appended to the 'SELECT' keyword.
это не оно?
Alexander Makarov
@samdark
Nov 11 2015 21:26
а, да :)
гы, я и забыл, что мы это запилили
Konstantin Sirotkin
@beowulfenator
Nov 11 2015 21:27
о счастье, о радость :)
Alexander Makarov
@samdark
Nov 11 2015 21:28
голова дырявая... низя столько issue отрабатывать подряд → :)
Roman Salnikov
@RSalo
Nov 11 2015 21:38
blob
что-то прикола не пойму с виджетом
какой еще неймспейсинг для датапровайдера?
Akhristenko
@Akhristenko
Nov 11 2015 21:40
@RSalo а что там в renderPhpFile?
Roman Salnikov
@RSalo
Nov 11 2015 21:43
@Akhristenko я обычным рендером рендерю. или я тебя не верно понял...
'2'. in C:\xampp\htdocs\pluha\vendor\yiisoft\yii2\base\View.php at line 247 – yii\base\View::renderPhpFile('file_' => '', '_params' => '')
Akhristenko
@Akhristenko
Nov 11 2015 21:44
У тебя слева stacktrace, там есть позиция renderPhpFile, откуда и происходит ошибка
Roman Salnikov
@RSalo
Nov 11 2015 21:44
это из стак трейса
Akhristenko
@Akhristenko
Nov 11 2015 21:45
Так блин, щелкни туда и посмори, чего ему вообще нужно. Чего он там реквайрить и автолоадить желает.
неужели это кому-то нравится?
Akhristenko
@Akhristenko
Nov 11 2015 21:48
раз существует, значит нравится
а зачем ты это сюда принес?
Roman Salnikov
@RSalo
Nov 11 2015 21:49
@Akhristenko да вродь по дебагу он без ошибок проходит. это уже потом стак трейс такой выкидывает...
atcq1
@atcq1
Nov 11 2015 21:50
да так, смотрю, что сейчас из шаблонизаторов модно
Akhristenko
@Akhristenko
Nov 11 2015 21:52
@RSalo он у тебя не может подгрузить какой-то класс/файл. Чтобы решить проблему тебе надо сначала понять какой файл он ищет, понять для какого класса ему это нужно и смотреть откуда он этот класс вообще тянет.
Данных, которые ты предоставил в своем скрине, для помощи недостаточно.
Roman Salnikov
@RSalo
Nov 11 2015 22:00
@Akhristenko решил проблему. это я тупак на самом сервере не перенес файл...
Максим
@maxyc
Nov 11 2015 22:02
Блять как же бесит сука ActiveForm
какого хуя yii фигачит то чего я не прошу!!!
@samdark ну серьезно. какого черта!??
уфф
Vitaly
@hellvesper
Nov 11 2015 22:08
@maxyc шо такое?))
нафига ты его юзаешь если тебе не подходит?
atcq1
@atcq1
Nov 11 2015 22:09
@maxyc пользуйся ларавел
Максим
@maxyc
Nov 11 2015 22:09
<div id="company-marks">
<div class="checkbox">
<input type="hidden" value="" name="Company[marks]">
<div id="company-marks">
<label>
<input type="checkbox" value="16683" name="Company[marks][]">
УАЗ
</label>
<label>
какого черта вставляется инпут хидден?
кто его блять просит?
Vitaly
@hellvesper
Nov 11 2015 22:10
@maxyc аткив форм это по сути враппер над Html хелпером, ты можешь юзать его
Максим
@maxyc
Nov 11 2015 22:10
<div id="masonry">
    <?php foreach($marks->children(1)->all() as $type):?>
        <div class="col-sm-1">
            <div class="form-group field-company-marks">
                <label class="control-label" for="company-marks"><?=$type->name?></label>

                <div id="company-marks">
                    <div class="checkbox">
                        <?=Html::activeCheckboxList($model, 'marks[]',
                            \yii\helpers\ArrayHelper::map($type->children(1)->all(), 'id','name')
                        )?>
                    </div>
                </div>
            </div>
        </div>
    <?php endforeach?>
</div>
это он?
Vitaly
@hellvesper
Nov 11 2015 22:10
@maxyc потому что как сделаешь чекбокс? =)
с передачей пустого значения
Максим
@maxyc
Nov 11 2015 22:10
обычно, без инпут хиддена
Vitaly
@hellvesper
Nov 11 2015 22:10
нет
Максим
@maxyc
Nov 11 2015 22:11
зачем мне это передавать?
он или есть или его нет
тогда как мне сделать вот это? ща...
Vitaly
@hellvesper
Nov 11 2015 22:12
он у тебя просто не будет передаваться вообще в таком случае
Максим
@maxyc
Nov 11 2015 22:12
Vitaly
@hellvesper
Nov 11 2015 22:12
в а так он передает пустую строку
Максим
@maxyc
Nov 11 2015 22:12
так он так вообще передает пустой филд.
Vitaly
@hellvesper
Nov 11 2015 22:12
ну да, он передает филд, а без этогоо поля он бы его вообще не передавал
Максим
@maxyc
Nov 11 2015 22:12
каждый тип автомарок (по странам) это отдельный вызов чекбокслист
получается, "итальянский"hidden перекрывает все что было выбрано до этого... напримкер в отечественном
@hellvesper я считаю такое поведение должен делать разраб. никак не фв
есть еще варианты как мне нарисовать чекбоксы не заюзывая pureHtml?
Vitaly
@hellvesper
Nov 11 2015 22:15
@maxyc ну ты ж юзаешь активфилд, а он использует твою модель, модель видать ожидает ввод поля, вот актив филд и извращается чтобы данные всегда приходили ожидаемые
Максим
@maxyc
Nov 11 2015 22:15
там тупо safe
Vitaly
@hellvesper
Nov 11 2015 22:15
обычный Html helper без актив
он не должен ничего пихать, но название модели вручную указывать будешь
и валидацию соответсвенно
atcq1
@atcq1
Nov 11 2015 22:16
                    <?=Html::activeCheckboxList($model, 'marks[]',
                        \yii\helpers\ArrayHelper::map($type->children(1)->all(), 'id','name')
                    )?>
это в модель массив придет?
а почему название атрибута с квадратными скобками?
Konstantin Sirotkin
@beowulfenator
Nov 11 2015 22:17
@maxyc это специально, чтобы если ничего не выбрано, то поле не было пустое
Максим
@maxyc
Nov 11 2015 22:17
потому что мне массив нжен.
ебать
<div id="masonry">
    <?php foreach($marks->children(1)->all() as $type):?>
        <div class="col-sm-1">
            <div class="form-group field-company-marks">
                <label class="control-label" for="company-marks"><?=$type->name?></label>

                <div id="company-marks">
                    <div class="checkbox">
                        <?=Html::checkboxList(Html::getInputName($model, 'marks[]'),[],
                            \yii\helpers\ArrayHelper::map($type->children(1)->all(), 'id','name')
                        )?>
                    </div>
                </div>
            </div>
        </div>
    <?php endforeach?>
</div>
Konstantin Sirotkin
@beowulfenator
Nov 11 2015 22:18
@maxyc
     * - uncheck: string, the value associated with the uncheck state of the checkbox. When this attribute
     *   is present, a hidden input will be generated so that if the checkbox is not checked and is submitted,
     *   the value of this attribute will still be submitted to the server via the hidden input.
надо параметр туда передать, тогда не будет выводить
if (isset($options['uncheck']))
Максим
@maxyc
Nov 11 2015 22:19
@beowulfenator спасибо, я знаю это, понимаю. не понимаю, почему об этом заботится фреймворк, а не программист. а во вторых, дать хотяб возвможность удатлить это
Konstantin Sirotkin
@beowulfenator
Nov 11 2015 22:19
так я ж говорю - передал параметр, оно и удалило
Vitaly
@hellvesper
Nov 11 2015 22:19
возможность есть, вон цитата из доки
Максим
@maxyc
Nov 11 2015 22:20
да наверное то что надо
Konstantin Sirotkin
@beowulfenator
Nov 11 2015 22:20
$form->field($model, 'foo')->checkbox(['uncheck' => null])
ну или как там оно
Максим
@maxyc
Nov 11 2015 22:20
блиа, надо отдыхать идти уже...
atcq1
@atcq1
Nov 11 2015 22:20
первый раз вижу, чтобы кому-то лист чекбоксов понадобился
на 1 атрибут )
Максим
@maxyc
Nov 11 2015 22:21
спасибо
Konstantin Sirotkin
@beowulfenator
Nov 11 2015 22:21
да блин, это еще ничего, а в былые времена бился об верстальщиков, которые творчески верстали формы
Максим
@maxyc
Nov 11 2015 22:21
@atcq1 по картинке считаешь не в место ?
Vitaly
@hellvesper
Nov 11 2015 22:21
@beowulfenator я до сих пор бьюсь)
Максим
@maxyc
Nov 11 2015 22:21
@beowulfenator бывало
Konstantin Sirotkin
@beowulfenator
Nov 11 2015 22:21
заверстает тебе такой, а ты потом играешься, чтобы стандартными компонентами выводить
ну вот я не бьюсь, избегаю такой фигни
Vitaly
@hellvesper
Nov 11 2015 22:22
заверстают кнопку либо ссылкой либо дивом вместо обычного буттона, нафига спрашивается
Konstantin Sirotkin
@beowulfenator
Nov 11 2015 22:22
сначала бэк, потом фронт
Vitaly
@hellvesper
Nov 11 2015 22:22
а ставишь буттон и верстка расползается
Konstantin Sirotkin
@beowulfenator
Nov 11 2015 22:22
ну насчет ссылок - это может быть оправдано
atcq1
@atcq1
Nov 11 2015 22:22
с ссылками удобно то, что там курсор сразу нужный
Vitaly
@hellvesper
Nov 11 2015 22:22
кнопка сабмит в форме не может иметь оправдания ввиде ссылки ))
atcq1
@atcq1
Nov 11 2015 22:22
на кнопке может быть не прописан )
Konstantin Sirotkin
@beowulfenator
Nov 11 2015 22:22
не зря ж в бутстрапе унифицированы классы ссылок и кнопок
не может
форма должна сабмититься кнопкой
atcq1
@atcq1
Nov 11 2015 22:23
а, ну сабмит это сабмит, там точно кнопку
я вообще про <button> говорил как таковой
Vitaly
@hellvesper
Nov 11 2015 22:23
ну иногда конечно ссылкой даже нужно
Konstantin Sirotkin
@beowulfenator
Nov 11 2015 22:23
ну я понимаю проблему
эх, печаль-тоска
Vitaly
@hellvesper
Nov 11 2015 22:24
=) им главное чтобы визуально смотрелось, а как там ты будешь натягивать это кого парит уже))
Konstantin Sirotkin
@beowulfenator
Nov 11 2015 22:24
ну да, да
хороший верстальщик на вес золота :)
Vitaly
@hellvesper
Nov 11 2015 22:25
да уж ;)
Максим
@maxyc
Nov 11 2015 22:27
бляяяя
atcq1
@atcq1
Nov 11 2015 22:27
что опять?)
Максим
@maxyc
Nov 11 2015 22:28
а этот гремучий
<?=Html::checkboxList(Html::getInputName($model, 'marks[]'),[],
                            \yii\helpers\ArrayHelper::map($type->children(1)->all(), 'id','name')
                        )?>
херачит мне лишний див
atcq1
@atcq1
Nov 11 2015 22:28
лишний для чего?
он реально мешает?
Максим
@maxyc
Nov 11 2015 22:28
нужно
<div class="form-group field-company-marks">
    <label class="control-label" for="company-marks">Отечественные</label>
    <input type="hidden" value="" name="Company[marks]">
    <div id="company-marks" uncheck="1">
        <div class="checkbox">
            <label>
                <input type="checkbox" value="16683" name="Company[marks][]">
                УАЗ
            </label>
        </div>

херачит это
<div class="form-group field-company-marks">
    <label class="control-label" for="company-marks">Отечественные</label>
    <div id="company-marks">
        <div class="checkbox">
            <div> <----------------------------------
                <label>
                    <input type="checkbox" value="16683" name="Company[marks][]">
                    УАЗ
                </label>
Konstantin Sirotkin
@beowulfenator
Nov 11 2015 22:28
попробуй ['tag' => false]
в опциях передать
Максим
@maxyc
Nov 11 2015 22:29
@beowulfenator да это понятно. но блиааа.... я привык что система мне помогает, а так это битрикс прям какой то получается. сижу и уговариваю систему правильно вывести мне что то
Konstantin Sirotkin
@beowulfenator
Nov 11 2015 22:30
не, не судьба
на самом деле, ты систему ломаешь
Максим
@maxyc
Nov 11 2015 22:30
ахахаха
[tag=>false] как думаете что мне сделала?
Konstantin Sirotkin
@beowulfenator
Nov 11 2015 22:31
ну дерьмо какое-то
Максим
@maxyc
Nov 11 2015 22:31
<div class="form-group field-company-marks">
<label class="control-label" for="company-marks">Отечественные</label>
<div id="company-marks">
<div class="checkbox">
<>
<label>
<label>
<label>
Konstantin Sirotkin
@beowulfenator
Nov 11 2015 22:31
да
Максим
@maxyc
Nov 11 2015 22:31
она пустой таг захерачиа
Konstantin Sirotkin
@beowulfenator
Nov 11 2015 22:31
да я понимаю
Максим
@maxyc
Nov 11 2015 22:31
в других местах жеж не выводило вообще, а тут тупо скобки
Konstantin Sirotkin
@beowulfenator
Nov 11 2015 22:31
есть такая проблема
Максим
@maxyc
Nov 11 2015 22:31
пойду похуярю гантелю. а то я ща нахер взорвусь
Vitaly
@hellvesper
Nov 11 2015 22:31
а там шаблон не передается?
Максим
@maxyc
Nov 11 2015 22:32
нет
Vitaly
@hellvesper
Nov 11 2015 22:32
жаль
грушу еще похуярь)
atcq1
@atcq1
Nov 11 2015 22:32
    return $hidden . static::tag($tag, implode($separator, $lines), $options);
нельзя тут тег убрать
Vitaly
@hellvesper
Nov 11 2015 22:33
а нафига оно его ставит?
я чето раньше не замечал прооблем)
atcq1
@atcq1
Nov 11 2015 22:33
я думаю - это нужно для валидации и тд
Максим
@maxyc
Nov 11 2015 22:33
@samdark глянь камменты выше
Konstantin Sirotkin
@beowulfenator
Nov 11 2015 22:34
yiisoft/yii2#7741
так и есть
на самом деле, если не нужна ActiveForm, печатай себе поля напрямую, да и все
а если нужна, то не верстай так, чтобы стандартная верстка не подходила
Vitaly
@hellvesper
Nov 11 2015 22:36
ага, туда сообщения об ощбках жс валидатор пихает
atcq1
@atcq1
Nov 11 2015 22:37
@maxyc а может просто select2 в режиме тегов туда запихаешь?
Vitaly
@hellvesper
Nov 11 2015 22:37
ох уж этот бутстрап
atcq1
@atcq1
Nov 11 2015 22:37
хотя зависит от того, сколько там марок нужно указывать
Максим
@maxyc
Nov 11 2015 22:39
@atcq1 не, с селект2 тоже не все гладко. тот что у картика не работает с тэгами. ему надо рукаами селект2 до 4 версии обновлять.
сделал я
atcq1
@atcq1
Nov 11 2015 22:39
работает с тегами у картика
сам постоянно использую )
Максим
@maxyc
Nov 11 2015 22:40
хз, я видимо в концы неудачник )))))
Максим
@maxyc
Nov 11 2015 22:40
ты делал тэги с аяксом?
atcq1
@atcq1
Nov 11 2015 22:40
встроенный ajax никогда не использовал
я оригинальный селект просто меняю
Максим
@maxyc
Nov 11 2015 22:41
он мне постоянно ругался что поле должно быть текстовым для тегов. хотя я текстовый вставлял, а селект2 сам вставлял dropdownlist
atcq1
@atcq1
Nov 11 2015 22:41
а select2 подстраивается
Максим
@maxyc
Nov 11 2015 22:41
не, в моем случае нужно из тысяч данных нужное подставлять
atcq1
@atcq1
Nov 11 2015 22:41
те. у тебя есть скрытый select элемент
и рендер select2
когда нужно - аяксом напрямую меняешь скрытый элемент
а select2 сам свой рендер обновляет
Konstantin Sirotkin
@beowulfenator
Nov 11 2015 22:47
мне selectize больше нравится
(чем select2)
Максим
@maxyc
Nov 11 2015 22:49
в 1 yii юзал
Максим
@maxyc
Nov 11 2015 22:54
короче вот
<?php use yii\helpers\Html; ?>
<?php $this->registerJsFile('https://cdnjs.cloudflare.com/ajax/libs/masonry/3.3.2/masonry.pkgd.min.js',['depends' =>['yii\web\JqueryAsset']]);?>
<?php $this->registerJs('$("#marks").blur(function(){$( "#masonry" ).masonry( { columnWidth: 220 } );});')?>

<div id="masonry">
    <?php foreach($marks->children(1)->all() as $type):?>
        <div class="col-sm-1">
            <div class="form-group field-company-marks">
                <label class="control-label" for="company-marks"><?=$type->name?></label>

                <div id="company-marks">
                    <?=Html::checkboxList(Html::getInputName($model, 'marks[]'),[],
                        \yii\helpers\ArrayHelper::map($type->children(1)->all(), 'id','name'),
                        ['item'=>function ($index, $label, $name, $checked, $value){
                            return '<div class="checkbox"><label>'.Html::checkbox($name, $checked, ['value'=>$value]). ' ' .$label .'</label></div>';
                        }]
                    )?>
                </div>
            </div>
        </div>
    <?php endforeach?>
</div>
это только чтобы вывести список чеклистов. потрачено 3 часа времени на тупой блять список чекбоксов
atcq1
@atcq1
Nov 11 2015 22:55
говнокодисто )
Максим
@maxyc
Nov 11 2015 22:55
а то
Konstantin Sirotkin
@beowulfenator
Nov 11 2015 22:55
надо было сразу наследовать и свое реализовывать
atcq1
@atcq1
Nov 11 2015 22:56
отрефактори хоть
Максим
@maxyc
Nov 11 2015 23:04
да чо тут рефакторить уж.
atcq1
@atcq1
Nov 11 2015 23:04
\yii\helpers\ArrayHelper в импорт
$type->children(1)->all() в отдельный php блок и писать в переменную
function ($index, $label, $name, $checked, $value){
return '<div class="checkbox"><label>'.Html::checkbox($name, $checked, ['value'=>$value]). ' ' .$label .'</label></div>';
}
еще до цикла можно засунуть в переменную
Максим
@maxyc
Nov 11 2015 23:27
спс
Максим
@maxyc
Nov 11 2015 23:45
Что нибудь придумано с сохранением Многие ко многим?
Alex
@Alex-Bond
Nov 11 2015 23:59
ну через линк и viaTable