Задать вопрос
  • Кастомная аутентификация в laravel 5.4?

    JhaoDa
    @JhaoDa
    LaravelRUS Team
    Не авторизацию, а аутентификацию. В документации написано, как.
    Ответ написан
    Комментировать
  • Какое направление развития выбрать? Мобильные разработки или Web?

    dom1n1k
    @dom1n1k
    Мобайл. Веб намного более размыт, веер потенциальных путей изучения в разы шире. Легче заблудиться по дороге, а у вас на это мало времени.
    Ответ написан
    Комментировать
  • Какое направление развития выбрать? Мобильные разработки или Web?

    alexfilus
    @alexfilus
    Senior backend developer
    Web технологии более универсальны. Хорошо изучив JavaScript можно писать и фронтэнд и бэкенд как для сайтов, так и для мобильных приложений. С таким багажом вы точно не пропадёте, и всегда найдёте работу хоть здесь, хоть за рубежом. Но там мода меняется постоянно, регулярно появляются и исчезают всё новые и новые фреймворки, и успевать за всеми тенденциями будет крайне тяжело.
    Если сосредоточиться только на мобильной разработке, скажем на Swift, под iOS, то там минимальная планка по зарплате выше, и войти в этот рынок будет легче (правда нужен Мак).
    А вообще сейчас эти 2 сферы всё больше переплетаются. Бэкенд и для сайтов и для мобильных приложений пишется примерно одинаково.
    Так что зная только JS и пачку современных фреймворков, вы точно не пропадёте, а что окажется ближе можете решить по ходу обучения.
    Ответ написан
    7 комментариев
  • Опции из БД в глобальный массив для доступности в любой точке приложения. Как реализовать такое?

    swede2k
    @swede2k
    Full-stack developer
    Существует куча готовых решений:
    anlutro/laravel-settings
    Если не хочется брать готовое, можно посмотреть принцип реализации.
    Ответ написан
    Комментировать
  • На чем написать простое android-приложение?

    Taraflex
    @Taraflex
    Ищу работу. Контакты в профиле.
    Если совсем быстро, то
    android pwa (это такие веб страницы работающие в оффлайн режиме) +
    https://github.com/zVolodymyr/docxjs или
    https://github.com/lalalic/docx2html#readme или
    https://github.com/mwilliamson/mammoth.js
    Но стоит быть готовым к весьма посредственному отображению разметки документов.

    electron не работает на android, есть иные альтернативы (всякие cordova и т. д.), но особых преимуществ по сравнению с pwa нет, ибо если нужен доступ к api ос, то лучше писать приложение сразу на нативных технологиях или xamarin
    Ответ написан
    5 комментариев
  • Запустить N разных очередей по X каждой на Z потоков?

    profesor08
    @profesor08
    Хоть 100 запускай, они распределятся примерно поровну, если один подвиснет, то остальные продолжат работу.
    Ответ написан
    3 комментария
  • В чем практическая польза итераторов в JS?

    search
    @search
    мама говорит что я особенный
    Полезность итераторов в том что это открытый интерфейс для любой структуры данных. Как вы уже поняли, любой класс/объект в JS может обладать интерфейсом итератора. Идея итератора в том чтобы скрыть внутреннее представление структуры данных от потребителя этих данных. Например, если вы работаете с какими-либо замысловатыми структурами данных, типа бинарных деревьев. Пользователю совсем не обязательно знать как ваш класс/объект хранит бинарное дерево. Пользователь просто его получает и проходит по всем его элементам в цикле. В дальнейшем, вы можете, при необходимости, заменить одну структуру данных на другую, не меняя самого пользователя. Например, вы можете заменить бинарное дерево на б-дерево прозрачно для самого пользователя (пользователь не будет знать что вы подменили структуры, он по прежнему получает что-то что можно проитерировать и ему этого достаточно).

    Для того чтоб глубже понять суть вопроса, можно погуглить про инкапсуляцию и SOLID (в вашем случае, принцип Open/closed).
    Ответ написан
    1 комментарий
  • Как находить и участвовать в проектах на гитхаб?

    sim3x
    @sim3x
    Делаете работу
    В процессе находите ошибку в стороннем коде
    Находите ее источник
    Пишите багрепорт и тесткей
    Так как всем пофиг
    Сами фиксите баг
    Неделю стучитесь мейнтейнеру, чтоб он принял ваш пушреквест
    Он вас посылает, тк ето не баг
    Ответ написан
    10 комментариев
  • Где разработчику изучать слепой метода набора на англ. + символы ($;:&{})?

    Изучали ли вы слепой набор на англ. раскладке, и если да, подскажите какие-нибудь сервисы или десктопный софт?

    Нет, и на русском не изучал, но печатаю вслепую и очень быстро. Не так, как учили в "соло", там специальные позиции для пальцев и т.п., просто пальцы запоминают раскладку. Чем больше вы печатаете, тем сильнее будет развита эта память. Вы будете просто представлять в сознании букву, например, "u", а потом нажимать вслепую на клавишу, и это будет именно эта буква. Например, этот текст я набрал вслепую по этой методике, и сделал всего две случайных опечатки.

    Вывод - лучший путь к изучению слепого набора есть непрерывная практика собственно набора.
    Ответ написан
    1 комментарий
  • Как на Laravel реализовать сложный фильтр по выборку товаров из БД?

    @vism
    $kolQuery = \App\Good::select('id', 'name')->where(function ($query) {
    if (...) {
    $query->where('id','>',0);
    }
    ...
    много условий
    ...
    });
    $kol = $kolQuery->count();

    $sel = $kolQuery->skip(($pg-1)*$max)->take($max)->get();
    Ответ написан
    Комментировать
  • Как на Laravel реализовать сложный фильтр по выборку товаров из БД?

    Используйте scope:
    public function scopeFilter($query) 
    {
        if (...) {
            $query->where('id','>',0);
        }
        ...
        много условий
        ...
        })->skip(($pg-1)*$max)->take($max)
        return $query;
    }

    https://laravel.com/docs/5.6/eloquent#local-scopes
    Ответ написан
    Комментировать
  • Как на Laravel реализовать сложный фильтр по выборку товаров из БД?

    JimmDiGreez
    @JimmDiGreez
    Full-stack Developer
    Например можно вынести функцию в переменную.
    $filter = function(query) {
        // ...
    };
    
    Good::select('id', 'name')->where($filter)->count();
    Ответ написан
    Комментировать
  • Laravel сортировка выборки из бд с помощью sortBy?

    @Yan-s
    Создадим коллекцию эллементов с именами:
    $collection = collect([['name' => 'c'], ['name' => 'b'], ['name' => 'a']]);

    Дампним и посмотрим что у нас там:
    Collection {#581 ▼
      #items: array:3 [▼
        0 => array:1 [▼
          "name" => "c"
        ]
        1 => array:1 [▼
          "name" => "b"
        ]
        2 => array:1 [▼
          "name" => "a"
        ]
      ]
    }


    А теперь отсортируем и дампним снова dd($collection->sortBy('name'));:
    Collection {#566 ▼
      #items: array:3 [▼
        2 => array:1 [▼
          "name" => "a"
        ]
        1 => array:1 [▼
          "name" => "b"
        ]
        0 => array:1 [▼
          "name" => "c"
        ]
      ]
    }


    Как видите порядок в коллекции изменился, теперь она отсортирована по имени. Но, ключи сохранились прежние, поэтому вызов dd($data[0],$data[1],$data[2]); выведет значения в старом порядке.

    То есть сортировка будет сохранена при порядковом обходе коллекции, обращаясь по ключу вы нарушаете этот порядок.

    Метод values() вернет новую коллекцию, в которой ключи сбросятся и будут пронумерованы заново, по порядку, то есть ключи будут соответствовать сортировке
    $collection->values()

    Если вы получаете коллекцию из БД, то эффективнее делать сортировку непосредственно на стороне БД, в остальных случаях учитывайте описанное поведение коллекций.
    Ответ написан
    1 комментарий
  • Верстка под 100vh?

    @BorisKorobkov
    Web developer
    Погуглите "резиновая верста" и "адаптивная верстка".
    Ответ написан
    1 комментарий
  • Как работать с очень длинными списками в JavaScript (angular, react, vuejs)?

    alvvi
    @alvvi
    export default apathy;
    (angular не использует vdom, для него история другая)
    перерисует целиком свой виртуальный dom

    Давайте немного проясним: виртуальный DOM - это грубо говоря js объект содержащий другие объекты.
    При добавлении нового сообщения туда добавится новый объект и весь DOM сравнится со старой версией с помощью diff-алгоритма специфичного для конкретного фреймворка.
    И только результат этого сравнения добавится в реальный DOM.
    Работа с объектом значительно быстрее работы с самим DOM-ом, поэтому чтобы оно начало работать заметно медленее у вас должен быть дикий уровень вложенности или очень большой DOM.

    100 сообщений и 50 контактов - это небольшие цифры, с таким любой из упомянутых фреймворков справится без просадок.

    Вот пример бенчмарков с большим количеством объектов(1000+) для многих фреймворков на примере незамысловатой таблицы:
    www.stefankrause.net/js-frameworks-benchmark6/webd...
    (там же есть ссылка на репо чтобы увидеть как она выглядит)
    Как видите, там в таблицу уже содержащую 10 000 добавляется еще 1000(!) объектов, и многие фреймворки впонле с этим справляются.

    В реальности же, вам вряд-ли придется добавлять такие цифры, потому что подгружают изначально обычно меньшее количество: такое, которое пользователь сможет увидеть в одном экране, все остальное догружается постепенно по мере надобности. То же самое касается вашей истории чата, ее стоит подгружать только за тот период, за который она необходима пользвателю.
    Ответ написан
    1 комментарий
  • Как перерасти из кодера в программиста?

    @AlexSer
    Думаю хорошие программисты все идеалисты. Именно поэтому им все время не нравиться то, что они делают. Сегодня тебе кажется, что ты пишешь красивый код. А через месяц смотришь на свой тот же код, и думаешь: - "блин что за урод это писал, ну как так можно".))
    Ответ написан
    2 комментария
  • Конфигурация веб сервера для Laravel?

    @Yan-s
    у меня все директории доступны с браузера, а должна быть только public

    Потому что корневой web директорией должна быть именно public, а не корень проекта
    Ответ написан
    Комментировать
  • Тестовое задание для собеседования на php программиста?

    sim3x
    @sim3x
    На ваш вопрос может ответить только тот, кто писал вам ответ

    Отказ вам мог быть дан по обьективным причинам так и нет

    Но можно и обязательно это не одно и тоже.
    если библиотека общеупотребима в стеке, но вы сделали свой велосипед (на уровне трейни/джуна) - значит замечание корректно

    задание рассчитано на 2-3 часа. Что-то мне кажется сомнительным за такое количество времени спланировать расширяемое приложение и прикрутить сторонние библиотеки.
    а если задачу сформулировать в ключе - установить 10 либ и связать их за 2 часа, то думать о расширяемости не потребуется

    Приложение НЕ должно быть написано с помощью какого-либо фреймворка. Но можно использовать различные пакеты, установленные через compоser, включая компоненты Symfony.
    судя по описанию, вас попросили имитировать симфони без прямого использования самой симфони

    В следующий раз, попросите того кто будет проверять вашу работу, указать на ключевые моменты, которые важны для него
    Ответ написан
    6 комментариев
  • Хотите задать вопрос администрации Тостера?

    OtshelnikFm
    @OtshelnikFm
    Обо мне расскажет yawncato.com
    По поводу махания банхаммеров вроде на хабре пообщались. Но для закрепления тут: сделайте не бан на неделю - а предупреждение. Я пару лет здесь и тупо забыл про историю со ссылками. Вы меня в бан на неделю отправили. И все равно несмотря на мое письмо с попыткой разобраться в ситуации и мое признание что я забыл про ссылки - ничего не поменялось (вот она лояльность). Если бы выписали просто пред - я бы почитал и вспомнил ваши правила.
    Но - и чтобы все свои преды и недельные баны я бы видел в своем лк - те что просрочены. Люди невольно всё равно забываются.

    2. Вот эти уведомления - хочу убивать их кликом по крестику https://yadi.sk/i/vfe7nMW33UqL44 (не переходя никуда) ну или группируйте их в одно с указанием кол-ва. Трижды одно и тоже - ну честно мне все равно кому понравился ответ. Но кол-во видеть хочу.

    3. Пометить ответ как решение - это нужная опция для сторонних пользователей. И вправду - решения часто не отмечают таковыми.

    4. Автора вопроса в комментариях помечайте - не всегда понятно что отвечаешь и вступил в диалог с случайным прохожим. Зачем на него тратить время. Пусть создает свой вопрос.

    5. Из вк переходя по интересным вопросам (а именно такие туда репостятся?) часто наблюдаю что вопрос удалили. С этим надо что-то делать. У вас сервис вопросов или банов? Если вопрос собирает аудиторию - зачем рубите сук?

    6. Добавьте жалобу - "это не полный ответ приправленный ссылкой". Я часто даю полные ответы и потом указываю ссылку. А вот некоторые просто кидают ссылку с ехидными "поискал в гугле за тебя"
    Ответ написан
    18 комментариев