• Какие есть беспалатные аналоги Sketch под windows?

    @designeruiux
    Держите программу аналогичная абсолютно* всем Icons8 Lunacy, как sketch, + открывает соответственно файл .sketch всё как нужно иерархия, подпапки, слои, тени, цвета, код и прочее.


    Free Sketch for Windows
    Native Windows app that works offline and supports .sketch files

    https://icons8.com/lunacy

    С Вас лайк ♥
    Ответ написан
    Комментировать
  • Как сделать автозагрузку классов из разных папок?

    shindakioku
    @shindakioku
    Не сайтоклепатор
    Добро пожаловать в мир composer'a :)
    Ответ написан
    1 комментарий
  • Что необходимо знать для создания социальной сети?

    @EverOne
    R&D Management since 2011
    Осталось всего-ничего, изучить LAMP (как минимум, для понимания), возможно пару-тройку фреймворков (по настроению, главное не увлекаться), потом осознать что PHP - не торт (тут для красоты, не для холивара: PHP, на самом деле, торт еще, но это наш с вами секрет) и начать копать в сторону JS/Python/Golang и др... Предположим JS: Узнать (прочитать или догадаться) о существовании NodeJS. Попробовать написать что-то на чистом, плюнуть и узнать (прочитать или опять догадаться, а вдруг!) о существовании express. Продолжать в том же духе.

    Чуть не забыл - все что вы так гордо "изучили" (не будем уточнять качество и объем изученного) - это максимум(!) одна десятая(1/10) фронт-энда. Не хочу вас огорчать, но есть еще бэк-энд. Про менеджмент вообще молчу.

    В это время фронт-эндеру - посмотреть на jQuery, начать все подряд на нем делать - эффектики там, плюшечки, карусельки, потом плюнуть и понять что это прошлый век. Прийти к выводу что надо искать что-то другое. Наткнуться на Angular/Vue или React/Backbone и д.р. (да не суть важно). Попытаться покончить с собой.

    Чуть не забыл, Bootstrap же! Вы будете в восторге!

    Где-то в середине этих процессов вы должны всей командой встретиться, выпить и плюнуть на это все.
    Ответ написан
    Комментировать
  • Почему не работает json поле?

    @miki131
    $user->properties это magic __get, который возвращает новый объект, поэтому его изменения не затронут саму модель.
    Исходный код
    $user = User::find(1);
    
    $temp = $user->properties;
    $temp->role = 'admin';
    
    $user->properties = $temp;
    $user->save();
    Ответ написан
    Комментировать
  • Парсер. Как быть с динамическими элементами?

    Попробуйте парсить с помощью phantomjs. Используя его, вы сможете выполнить на целевой странице любые действия, например этот же клик по картинке, и далее достать необходимую вам информацию. Я когда то писал о парсинге с использованием phantomjs небольшую статью в своем блоге.
    Ответ написан
    1 комментарий
  • Лучшие gamedev блоги?

    Stalker_RED
    @Stalker_RED
    Не английский, и далеко не все посты про геймдев, но отличный автор с очень крутой подачей материала.
    https://habrahabr.ru/users/milfgard/posts/
    Ответ написан
    Комментировать
  • Стоит и какие наработки выкладывать на github для будущего портфолио?

    @backender_ru
    https://backender.ru/
    Любой код, который не стыдно показать. В котором нет говнокода. Ну это смотря чем вы специализируетесь. А на чем кстати? К примеру, могли бы написать свой сайт и будущему работодателю показывать его исходник.
    Ответ написан
    2 комментария
  • Динамическое создание ЧПУ ссылки?

    Negwereth
    @Negwereth
    lvivcss.com.ua
    Для этого существуют search params, которые в url после ? идут. А тут черти что.
    Чем именно обусловлен именно такой формат url?
    Ответ написан
    1 комментарий
  • Какую взять ORM для своего проекта?

    @D3lphi
    Возьмем ORM из двух популярных PHP-фреймворков. Первая будет Eloquent ("Родная" для фреймворка Laravel), а вторая - Doctrine (Одна из доступных ORM в фреймворке Symfony). Кардинальным отличием этих двух "систем" является то, что первая разработана на основе паттерна Active Record, а вторая - с использованием паттерна Data mapper. Чем же они отличаются? Приведу абстрактные примеры кода для первого и второго паттерна:

    Active Record:
    $user = new User(); // Создаем "сущность" нового пользователя.
    $user->login = 'D3lph1'; // Устанавливаем его логин равным 'D3lph1'.
    $user->password = '123456'; // Устанавливаем пароль этому пользователю.
    $user->save(); // Сохраняем пользователя.


    Все, новый пользователь создан и находится в базе данных. Теперь, Data mapper:
    $user = new User();
    $user->login = 'D3lph1'; // Устанавливаем его логин равным 'D3lph1'.
    $user->password = '123456'; // Устанавливаем пароль этому пользователю.
    
    $manager = ... // получаем объект менеджера (Например, из DI контейнера).
    $manager->persist($user); // "Скармливаем" новоиспеченного пользователя нашему менеджеру.
    // $manager->persis($user1); // Мы можем создать еще одного пользователя и уведомить менеджер об этом.
    // $manager->persis($user2); // И еще одного...
    $manager->flush(); // После выполнения этого метода данные отправятся в базу данных.


    Очевидно, первый способ куда проще. Но не все так просто. Дело в том, что паттерн Active Record нарушает принцип единственной ответственности (Single responsibility SOLID). И поэтому, в какой-то степени, может считаться антипаттерном. (Но это ни в коем случае не значит, что его не нужно использовать, для большинства проектов "хватит" за глаза). Наша сущность пользователя делает слишком много. Она не только представляет данные, но и еще работает с ними. В больших проектах это может усложнить поддержку кода. Data mapper, напротив же, разделяет представление данных в сущность (user) и работу с данными (manager, в данном примере. Также, за работу с данными отвечает репозиторий. Вы столкнетесь с ним, как только вам потребуется получить данные из БД (Doctrine)). В небольших проектах вы не заметите особой разницы. Разве что во втором случае увеличится количество классов. Так, в Eloquent вы создаете 1 модель, а в Doctrine - сущность и репозиторий.

    Все современные ORM включают в себя также, так называемые, query builder'ы. Они помогают отказаться от языка запросов, такого как SQL. Вы будете составлять запросы таким образом:
    $result = $qb
          ->select(['id', 'login'])
          ->where('id', '<>', 3)
          ->get();


    Собственно, query builder'ы помогают абстрагироваться от конкретной СУБД. То бишь, вы написали запрос 1 раз, а затем от того, какую СУБД вы используете будет зависеть выходной sql код. Генерация этого кода будет произведена абсолютно прозрачно для вас.

    Обе ORM имеют работать с отношениями. Вам нужно будет указать, как таблицы относятся друг к другу, а затем вы сможете удобно обращаться к связанным сущностям.

    Теперь конкретно. Так как вы только начинаете осваивать ORM, я бы порекомендовал начать с Eloquent. Она гораздо проще, чем Doctrine, да и более производительная, к тому же. Как освоите Eloquent, смело учитесь работать с Doctrine. Она обязательно должна быть "в копилке" ваших скиллов, так как является самой мощной в "мире" PHP.

    Успехов!
    Ответ написан
    2 комментария
  • Как правильно вывести данные с условием where?

    @holfza
    Наверное как-то так красивее будет:
    $purses = Auth::user()->purses()->orderBy('created_at', 'desc')->get();
    Ответ написан
    Комментировать
  • Как пофиксить ошибку?

    @Root_men Автор вопроса
    ->get()
    Ответ написан
    Комментировать
  • Почему не сохраняются flash-данные?

    wielski
    @wielski
    ✔ Совет: Вам помогли? Отметьте ответы решением.
    А в чем проблема сделать так?
    return redirect()->route('admin.places')->withSuccess('Сохранено');


    И на странице:
    @if($success = session('success'))
       {{ $success }}
    @endif
    Ответ написан
    3 комментария