Местоположение
Россия, Воронежская обл., Воронеж

Достижения

Все достижения (2)

Наибольший вклад в теги

Все теги (21)

Лучшие ответы пользователя

Все ответы (33)
  • Как работать с blade в laravel?

    Lyrium
    @Lyrium
    Web developer
    Blade шаблонизатор который помогает разграничить html и сделать работу с ним и вывод php данных более удобным и гибким.

    Разобраться что к чему не сложно blade прост для освоения, сейчас приведу несколько примеров с чего лучше начать:

    во первых разобраться с layout и с устройством шаблонизатора можно на примере кода который генерируется командой "php artisan make:auth" (базовая авторизация Laravel прочесть можно в офф. документации ссылка на авторизацию)
    Здесь сразу у вас будет пример с несколькими вьюхами и правильно построенным шаблоном в целом

    также можно ознакомиться с русскоязычной документацией описывающей blade довольно подробно ссылка на русский blade

    Самое главное нужно понимать что Blade основан на концепции наследования шаблонов и секциях, а разобраться с тем как что работает помогут примеры готового кода и документация

    upd: Директива @section, как следует из её названия, определяет секцию содержимого, а директива @ yield используется для отображения содержимого заданной секции. Т.е. в то место где стоит yield попадает значение секции

    схематичный пример:

    есть файл app, в дирректории layouts
    layouts/app.blade.php
    <html>
    <head>
    	<title>
    		@yield('title', 'Laravel')
    	</title>
    
    	<!-- Styles -->
    	<link href="{{ asset('public/css/app.css') }}" rel="stylesheet">
    </head>
    <body>
    	<div id="app">
    		<div class="navbar">
    			...
    		</div>
    
    		<div class="container">
    			@yield('content')
    		</div>
    	</div>
    </body>
    </html>


    второй файл описывает то что попадет в указанную секцию
    products.blade.php
    @extends('layouts.app')
    
    @section('title', 'Products')
    
    @section('content')
    	@foreach($products as $product)
    		{{ $product }}
    	@endforeach
    @endsection

    В первом случае нет закрывающего @endsection из-за того что тело секции это и есть строка 'Products', во втором случае мы указываем конец секции, потому что тело секции находится между @section и @endsection
    Ответ написан
    7 комментариев
  • Как повысить скорость разработки?

    Lyrium
    @Lyrium
    Web developer
    Вставлю свои 5 копеек к огромному списку ответов на Ваш, очень волнующий большинство людей, вопрос.

    У меня был момент когда сильно стала проседать продуктивность работы, слабо помогали различные методики, пробовал помидорро, гулял каждые 2-2,5 часа по лесу, благо он прям напротив дома. Но постоянно замечал что все время откладываю задачи, не хочу заниматься в эту секунду работой, вот после видео на YouTube или поста на Pikabu продолжу и так до вечера все откладывал.
    Перешел на ночной режим, т.к. появилась мысль что днем мозг просто слишком хорошо работает и задача кажется ему легкой и неинтересной, а к вечеру подустает и задача уже в самый раз. Но как выяснилось опытным путем это не совсем так, начал и ночью откладывать на потом, после примерно 40 минут работы.

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

    Быть может Вам просто нужен перерыв
    Ответ написан
    2 комментария
  • На каком этапе обучения вы начинали искать свою первую работу?

    Lyrium
    @Lyrium
    Web developer
    привет, расскажу свою историю :)

    Искать работу начал после полугодовалого обучения дома, после работы. В тот момент был сис. админом и изучал web, а именно php + html + css + mySql. Знаний было мало, основы php, c++, c#, python. Всего понемногу и считай ничего нигде, но мало мальски ерунду везде мог сделать.

    Написал сайт "Блог" на Codeigniter 2, а потом на Laravel недо-интернет магазин.

    Решил что уже пора и за, примерно, 3 недели нашел первую работу программистом, удаленно, за копейки. Узнал там про git, подтянул JavaScript до уровня "Слабый джун" и через 3 месяца уже ушел, тоже в не очень хорошее место, но поприятнее.

    Самое важно это понимать то, что чтобы Вас взяли на работу Вы должны иметь возможность предложить что-то работодателю и уметь себя преподнести в лучшем свете (только совсем нагло не обманывать, т.к. такое всплывет моментально)
    Ответ написан
    Комментировать
  • Как осортировать посты юзера по дате создания?

    Lyrium
    @Lyrium
    Web developer
    Вам нужно получить посты одного юзера
    $user = User::find($id);
    $posts = $user->posts; // Если есть связь от одного пользователя.
    
    return response()->json($posts->sortByDesc('created_at')); // и вызвать сортировку коллекции.


    Плюс нужно понимать различия:
    1) orderBy это сортировка в QueryBuilder, в SQL грубо говоря Прочесть тут. Поэтому в вашем случае писало что нет такого метода ибо у коллекции вызывали его.

    как вариант с orderBy
    $posts = Post::where('user_id', '=', $user_id)
    ->orderBy('created_at', 'desc')
    ->get();
    
    return response()->json($posts);


    2) А sortBy / sortByDesc сортируют готовую коллекцию Почитать тут (пример выше).
    Ответ написан
    8 комментариев
  • Что делает Guard и для чего он нужен?

    Lyrium
    @Lyrium
    Web developer
    О том что ищете можно почитать в офф. документации или в переводе

    Вырезки из перевода:
    Guards, "гарды", "охранники". Это по сути правила аутентификации пользователя - в каких частях запроса хранить информацию о том, что данный запрос идет от аутентифицированного пользователя. Например, это можно делать в сессии/куках, или в некотором токене, который должен содержаться в каждом запросе. В Laravel это гарды session и token соответственно.

    Вы также можете назначить специфичный гард для обработки процесса аутентификации. Для этого создайте свойство guard в вашем классе AuthController. Значением этого свойства должно быть название одного из гардов, определённых вами в файле config/auth.php.

    protected $guard = 'admin';

    Вы можете явно задать, при помощи какого гарда обслуживать процесс авторизации. Это позволит вам иметь в приложении несколько частей, вход в которые осуществляется по своим правилам. Пользователь может быть залогинен в одну из них, или несколько. Самый простой пример - это админка. Ваш гард admin определяет правило, залогинен данный пользователь как админ, или нет - например, установкой специальной куки.

    Тогда при логине в админку вы делаете так:

    if (Auth::guard('admin')->attempt($credentials)) {
        //
    }


    Вы также можете явно указать гард, при помощи которого будете фиксировать процесс аутентификации.

    Auth::guard('admin')->login($user);

    Также можно создать свой кастомный гард, почитать об этом тут
    Ответ написан
    Комментировать

Лучшие вопросы пользователя

Все вопросы (5)