Laravel курс с нуля, база. 31. Admin LTE в Laravel, устанавливаем админку

Поделиться
HTML-код
  • Опубликовано: 25 окт 2024

Комментарии • 93

  • @ArtDenis1993
    @ArtDenis1993 2 года назад +31

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

  • @DimAlbisoara
    @DimAlbisoara Год назад +10

    At step from 10:14, this route is also functional: (Laravel 10)
    Route::group(['namespace' => 'App\Http\Controllers\Admin', 'prefix' => 'admin'], function () {
    Route::group(['namespace' => 'Users'], function () {
    Route::get('/users', 'IndexController')->name('admin.users.index');
    });
    });

    • @laravelcreative
      @laravelcreative  Год назад

      Благодарю!:)

    • @e314max
      @e314max 9 месяцев назад

      Спасибо тебе добрый князь!

    • @ValenTinesTarot
      @ValenTinesTarot 8 месяцев назад

      Огромное спасибо

    • @Olegcowboyoleg
      @Olegcowboyoleg 7 месяцев назад

      use App\Http\Controllers\Admin\Post\IndexController as IndexAdmin;
      Route::group(['namespace'=>'App\Http\Controllers\Admin', 'prefix'=>'admin'], function (){
      Route::group(['namespace'=>'Post'], function (){
      Route::get('/post', IndexAdmin::class)->name('admin.post.index');
      });
      });
      Иначе война имен классов (даже если они в разных пространствах имён, но сходятся в одном файле маршрутов), потому что у нас с прошлых занятий остался IndexController. Маршрутизатор не знает, к какому обращаться.
      Хотя..... ты имя класса пишешь в кавычках, может поэтому прокатывает.

  • @evgeniysergeev2708
    @evgeniysergeev2708 2 года назад +14

    После выделения всех src c помощью alt+j и прописи {{asset('')}} продолжаем двигать множественным курсором вправо и остановившись на первом символе путей к чему либо жмем ctrl+w два раза, выделилось всё, вырезали, переместились в асет и вставили. Чтобы не тыркать по одиночке эти пути в асет.

    • @АлександрБабола
      @АлександрБабола Год назад +1

      если вы на маке - ctrl+g(для следующего похожего выделения) или ctrl+cmd+g для выделения всех похожих вхождений в документе. Вместо ctrl+w жмем option+стрелка вверх(не шифт)

    • @Olegcowboyoleg
      @Olegcowboyoleg 7 месяцев назад

      Зачёт! Надо привыкать к горячим клавишам и ускорять редактирование кода. Респект.

  • @vimitali7630
    @vimitali7630 2 года назад +3

    Спасибо, за урок! Очень крутая и простая подача материала!

  • @soundofsoul8731
    @soundofsoul8731 10 месяцев назад +1

    Шеф, дякую за урок, я вирішив сам зробити адмінку із своїм дизайном.

    • @xznkto
      @xznkto 9 месяцев назад

      тебя здесь все поняли

    • @Dewll
      @Dewll 3 дня назад

      @@xznktogoogle translate

  • @Mihail_Litvincev
    @Mihail_Litvincev 3 года назад +9

    Я установил AdminLTE через композер. Команда для установки на их сайте в разделе Docs / Installation:
    composer require "almasaeed2010/adminlte=~2.4"
    После установки не нужно проставлять нигде {{ assets() }}, все прекрасно работает)

    • @laravelcreative
      @laravelcreative  3 года назад +1

      Отличный вариант)

    • @НиколайГолодов-э1и
      @НиколайГолодов-э1и 2 года назад

      И правда) Респект, Михаил!

    • @Dmitry_RS
      @Dmitry_RS 2 года назад +1

      Хм... Я тоже установил через composer require "almasaeed2010/adminlte=~3.2" но если зайти в папку vendor/almasaeed2010/adminlte/starter.html там все без {{ assets() }}. Можете подробнее обьяснить что вы делали после установки что все сразу завелось?

  • @topran5451
    @topran5451 2 года назад +8

    Для Laravel 9 route нужно написать так:
    Route::prefix('admin')->group(function (){
    Route::get('post',[IndexController::class,'__invoke'])->name('admin.post.index');
    });

    • @РасулМансуров-в9н
      @РасулМансуров-в9н 2 года назад +1

      Немного дополню:
      Route::prefix('admin')->namespace('App\Http\Controllers\Admin\post')->name('admin.')->group(function() {
      Route::get('/post', 'IndexController')->name('post.index');
      });
      Тут сразу в группу забито имя, адрес контроллера и префикс ссылки)

    • @MrAssistent1
      @MrAssistent1 Год назад +1

      Еще вариант, поближе к оригиналу, но работает на 9-ке:
      Route::prefix('admin')->namespace('Admin')->group(function (){
      Route::namespace('Post')->group( function (){
      Route::get('/post', 'IndexController')->name('admin.post.index');
      });
      });

    • @АлександрКириленко-ь4ф
      @АлександрКириленко-ь4ф Год назад

      @@РасулМансуров-в9н а почему с 9 версии нужно прописівать в неймспейсах полній путь? Ві разобрались? Я - нет 🤷‍♂

    • @vsechp_
      @vsechp_ Год назад

      @@РасулМансуров-в9н Спасибо! На 10 ларавел работает отлично)

  • @BookwormYevgen
    @BookwormYevgen Год назад +5

    Вроде и полезная информация, но структура подаваемой информации - жесть. Каша какая то )) Автор рекомендует сначала просмотреть, потом сделать возможно подсматривая, потом - все самостоятельно. Как же тут разобрать - что нужно сделать? Было бы хорошо в рамках видео - обозначивать типа техзадания - что должно получиться - в каком виде и с каким функционалом. С труктуре вьюшек запутаться можно, если не знаешь, чего от тебя хотят...

  • @chilibean6152
    @chilibean6152 6 месяцев назад

    Всё ок, только вместо иконки пустой прямоугольник, но это мелочь. Спасибо за урок

  • @user-page_mage
    @user-page_mage Год назад

    Thank's for your lessons.

  • @online-lead
    @online-lead Год назад +4

    Laravel 10
    Route::group(['namespace' => '\App\Http\Controllers\Admin\Post'], function () {
    Route::prefix('/office')->group(function () {
    Route::get('/posts', IndexAdminController::class)->name('office.post.index');
    });
    });

  • @JohnJohnsonX
    @JohnJohnsonX 2 года назад +2

    я ложу dist и plugins в паблике в каталог admin, чтоб не валялось у корне непонятно что:) ну и поправить пути в шаблоне

  • @maven2424
    @maven2424 Год назад

    Отличный урок по Laravel

  • @spitzer4077
    @spitzer4077 2 года назад +3

    Получилось всё, и домашка тоже, кроме иконки, иконка ни в какую не всталялась

  • @vitaly8681
    @vitaly8681 2 года назад +2

    Спасибо, за урок. Есть такая проблема что не могу из папки public достать картинки или другие файлы.Возвращает 404 страницу. Окружение laravel сделал по твоим урокам dockera

    • @vitaly8681
      @vitaly8681 2 года назад +2

      нужно было поправить немного конфиг nginx try_files $uri/ /index.php?$args; на try_files $uri $uri/ /index.php?$args;

  • @MrBenedig
    @MrBenedig 3 месяца назад

    а правильно ли, что я в main.blade.php поменял ссылку с {{ route('main.index') }} на {{ route('admin.post.index') }} и все create, store, show, edit, delete заработали? или как нужно было сделать, чтобы окно для добавления, редактирования и т.д. открывалось именно в админке? имею ввиду, чтобы открывалось именно в секции Main в верстке, где окошко Dashboard?

  • @xelax3613
    @xelax3613 4 месяца назад

    почему то не подгружается иконка. Подгружаются только те, что есть базовом шаблоне

  • @xznkto
    @xznkto 9 месяцев назад

    AdminLTE отстал от жизни. Мне понравились Material Dashboard 2 Pro и Star Admin 2 Pro.

  • @ПонтелеймонКотлеткин
    @ПонтелеймонКотлеткин 10 месяцев назад +4

    Из урока в урок красной нитью "жэй значит Женя")) Вообще не понимаю, причём к "J" какой-то Женя?? Ровно ничего общего как по мне. Только сбивает с толку. Джон - надо говорить. А ещё лучше - join, чтобы в голове на место садилось. Но в целом уроки хорошие. Немного легче воспринимаются чем аналогичные на ютубе.

  • @КонстантинАржанов-з5ж

    Я правильно понял, в 9 версии namespase не поддерживается? Приходится контроллеры импортировать через псевдонимы либо прописывать полный путь к контроллеру в роутинге

    • @MrAssistent1
      @MrAssistent1 Год назад +1

      Route::prefix('admin')->namespace('Admin')->group(function (){
      Route::namespace('Post')->group( function (){
      Route::get('/post', 'IndexController')->name('admin.post.index');
      });
      });

  • @user-ry3fp2kx5s
    @user-ry3fp2kx5s Год назад +2

    на 10:14 ошибка "Invalid route action: [Admin\Post\IndexContriller]." (Ларавел 9). Исправил на:
    Route::group(['namespace' => 'App\Http\Controllers\Admin', 'prefix' => 'admin'], function () {
    Route::group(['namespace' => 'post'], function () {
    Route::get('/post', 'IndexController')->name('admin.post.index');
    });
    });

  • @ВасилийЛомов-п2г
    @ВасилийЛомов-п2г 3 года назад +2

    все прекрасно, только уж больно режет глаз то как обновляется "сайдбар" при переходе по номерам пагинации.... что бы это предотвратить нужен ajax- запрос?

    • @laravelcreative
      @laravelcreative  3 года назад

      Не совсем понятно, что не так?)

    • @ВасилийЛомов-п2г
      @ВасилийЛомов-п2г 3 года назад

      @@laravelcreative страничка "дергается"

    • @laravelcreative
      @laravelcreative  3 года назад

      Аа интересно, у меня вроде нормально отрабатывает( Эх фронтенд(

    • @ВасилийЛомов-п2г
      @ВасилийЛомов-п2г 3 года назад

      @@laravelcreative понял, принял. спасибо вам за обратную связь! P.s. уроки зачет!!

  • @feterson2557
    @feterson2557 2 года назад +1

    Вместо {{asset()}} можно прописать относительные пути ./ href="{{asset('plugins/fontawesome-free/css/all.min.css')}}" href="'./plugins/fontawesome-free/css/all.min.css'"

  • @AndriyNahornyi
    @AndriyNahornyi 2 года назад

    Кстати, при выборе (Alt+J ) Можно копировать и вставлять

  • @kashevsky
    @kashevsky Год назад

    Спасибо Вам

  • @tolik8
    @tolik8 Год назад +2

    из видео вообще не понятно про возможности этой админки, в конце видео такое чувство что админку ставил только ради сайдбара слева
    Я правильно понял - эта админка это только для фронтэнда?

    • @Olegcowboyoleg
      @Olegcowboyoleg 7 месяцев назад

      Разминка мозгов: как поставить какую-нибудь систему фронтэнда, которую тебе написали под проект, как её подключить и прокинуть стили и скрипты. Наверное так))

  • @sdsd-ec8rw
    @sdsd-ec8rw Год назад +1

    что-то непонятно, зачем вообще эта штука? были сообщения, открывающиеся в окне браузера. Перенес их в этот adminlte. И что дальше? Зачем и о чем вообще это видео?

  • @katherinepogodina6276
    @katherinepogodina6276 2 месяца назад

    Lara 11. If u add dirs dist & plugins in public, that u need to use this code in your blade file.

  • @andreivolkov2024
    @andreivolkov2024 Год назад

    у меня фильтры не работают стоит их прописать тут же слишком много переадресаций или возврат на предыдушую страницу

  • @slavyanntv
    @slavyanntv 4 месяца назад +1

    Ни один из вариантов рутов на 10 минуте не работает( В комментариях все перепробовал, ошибка 404, Ларавел 11

    • @cheshirecat1080
      @cheshirecat1080 3 месяца назад +1

      Route::group(['namespace' => 'App\Http\Controllers\Admin', 'prefix' => 'admin'], function () {
      Route::group(['namespace' => 'Post'], function () {
      Route::get('/posts', 'IndexController')->name('admin.post.index');
      });
      }); Не забывай, что http путь будет с префиксом.

  • @ulyanapovitrulay594
    @ulyanapovitrulay594 2 года назад

    Спасибо за урок!!! Интересный подход, я раньше устанавливала adminLTE через composer, попробую ваш способ! И у меня есть вопрос: в sidebar.php, не видит {{ $posts->count() }}, думает что это просто текст. В views\admin\post\index.blade.php выводит, ну мы в это представление и передаём ). Могла, что-то пропустить)

    • @laravelcreative
      @laravelcreative  2 года назад +1

      Через компосер тоже можно, просто много лишних библиотек цепляет) Но и так и так полезно уметь!) Да, возможно что-то было упущено) Может скобочки не те или еще что)

    • @Gleb8888
      @Gleb8888 2 года назад

      @Андрей Минск нашли решение?

    • @Dmitry_RS
      @Dmitry_RS 2 года назад

      @Андрей Минск Можно чуть подробнее, а то я передаю доп переменную $total (т.е. в create делаю запрос $total = Post::count(); и его отдаю в переменную $total и дальше использую именно ее в шаблоне), а это имхо ппц не правильно...

    • @Dmitry_RS
      @Dmitry_RS 2 года назад

      @@Gleb8888 может уже нашли и поделитесь?)

    • @Dmitry_RS
      @Dmitry_RS 2 года назад

      @Андрей Минск спасибо, уже тоже нашёл инфу про view::share, единственное пока не пробовал, но в теории вижу один минус, использоваться будет вообще во всех шаблонах, даже не в админке, а это каждый раз лишний запрос и обработка, я понимаю что не страшно, но хотелось бы ограничить share только нужными контроллерами. Завтра на свежую голову попробую

  • @alexandr9900
    @alexandr9900 2 года назад

    камент для продвижения

  • @yurimikhaylov8543
    @yurimikhaylov8543 3 года назад

    Добрый день, спасибо / очень подробно
    скажи книга "Laravel. Полное руководство. 2-е издание" Мэтта Стаффера 2020 года - сильно от текущей документации на Laravel8 отличается? / он описывает 5.8

    • @laravelcreative
      @laravelcreative  3 года назад

      Если описывает 5.8, то отличий много) Наверно общие какие-то моменты можно взять, а так к сожалению в 8 версии уже многое неактуально)

    • @ulyanapovitrulay594
      @ulyanapovitrulay594 2 года назад

      ОООчень много отличий! Но благодаря этим урокам, можно быстро разобраться в отличиях, новых нотациях и функциях. Раньше многое приходилось делать руками)

  • @demiansorrow3871
    @demiansorrow3871 2 года назад

    Уже который раз попадаю в ситуацию, что всё правильно написал, но не работает страница. Спасает команда php artisan route:cache. Можете объяснить как это работает и почему вас всё сразу работает?))))

    • @laravelcreative
      @laravelcreative  2 года назад +1

      Странно. Попробуй перейти в config/cache.php и там настройку эту глянуть
      'stores' => [
      //...
      'none' => [
      'driver' => 'null',
      ],
      ],
      В общем должно быть, как тут указано)

  • @andrewkolev1048
    @andrewkolev1048 Год назад +1

    Капец установка.... Это не установка, это просто перенести стили и верстку. Верните мое потерянное время.

    • @BookwormYevgen
      @BookwormYevgen Год назад

      покажи или хотя бы напиши, как это сделать проще и быстрее другим способом

  • @trvtrv3172
    @trvtrv3172 2 года назад

    15

  • @Богдан-ж7б2м
    @Богдан-ж7б2м Год назад +1

    Такой вариант если у кого-то ошибка :
    404 NOT FOUND
    Или ошибка с путем.
    Route::group(['namespace' => 'App\Http\Controllers\Admin', 'prefix' => 'admin'], function () {
    Route::group(['namespace' => 'Contact'], function () {
    Route::get('/contact', 'IndexController')->name('admin.contact.index');
    });
    });

  • @АлександрЛисин-е4л

    Добавил каталог товаров в админку, в итоге когда заходишь в посты теряется переменная $products (из файла sidebar.blade.php где выводится количество постов или товаров) при переходе в каталог товаров соответственно теряется переменная $posts. Получаем ошибку Undefined variable $posts или $products. Как решить данную проблему, подскажите пожалуйста.

  • @Niazyan
    @Niazyan 2 года назад

    Никак не могу решить проблему: как только добавляю FilterRequest $request в __invoke (в файле Admin/Post/IndexController.php) то при обращении к 127.0.0.1:8000/admin/post выбивает на главную страницу. Как убираю, сразу dd(1111111); срабатывает. По видео код один к одному переписываю.

    • @Niazyan
      @Niazyan 2 года назад +1

      Оказалось из за 'title' => 'required|string' в FilterRequest, меняю на 'title' => 'string' и всё работает!

    • @Niazyan
      @Niazyan 2 года назад +1

      Короче я сам себе злобный буратино, надо не required писать, а require 😁

    • @laravelcreative
      @laravelcreative  2 года назад +1

      Не забудь nullable добавить, если хочешь без required

  • @PankPank-ze8mv
    @PankPank-ze8mv 5 месяцев назад

    Кому может поможет
    Route::group(['namespace' => '\App\Http\Controllers\Admin\Post'], function () {
    Route::prefix('/admin')->group(function () {
    Route::get('/post', 'IndexController')->name('admin.post.index');
    });
    });

  • @soundofsoul8731
    @soundofsoul8731 10 месяцев назад

    Undefined variable $projects (View: F:\lessons\first_project
    esources\views\admin\includes\sidebar.blade.php)

    • @soundofsoul8731
      @soundofsoul8731 10 месяцев назад

      class AppServiceProvider
      public function boot()
      {
      Paginator::defaultView('vendor.pagination.default');
      View::composer('admin.includes.sidebar', function ($view) {
      $view->with('projectsCount', Project::all()->count());
      });
      }