Laravel курс с нуля, база. 19. Отношения многие ко многим

Поделиться
HTML-код
  • Опубликовано: 8 сен 2024
  • Стань спонсором(бусти аккаунт), доступ к собеседованиям:
    boosty.to/lara...
    Мои платные курсы:
    laravelcreativ...
    План развития с нуля до middle+:
    laravelcreativ...
    Группа вк:
    laravel...
    - Ссылка для донатов, спонсорства, пожертвований
    yoomoney.ru/to...
    www.donational...
    - -
    . ---
    . .

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

  • @Mr.Capone-
    @Mr.Capone- 3 года назад +10

    Вот на теме один ко многим, и многие ко многим я что-то уже начал дымиться от перезагрузки. Наверное потому что просто смотрю, как художественный фильм для первого раза. Во второй уже буду смотреть практически. Я аж прослезился от радости, когда увидел урок в плэйлисте: Асинхронный CRUD в Laravel... Понятно, что уже есть подобное, но для базы, и эта тема - это просто шик, блеск, красота!

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

      Тут лучше для начала чисто по человечески для себя привести примеры из жизни отношения один к одному, один ко многим и многие ко многим. А потом это будет проще прочувствовать в реализации отношений объектов в бд)

    • @Mr.Capone-
      @Mr.Capone- 3 года назад +2

      @@laravelcreative хорошая идея: рисовать себе мозговые карты после просмотренных уроков так, чтобы, взглянув на неё, сразу было всё понятно. И ещё вопрос: планируете сделать ещё плэйлист(ы), где уже не теория ларки рассказывается, а показывается на реальном, небольшом проекте? вот пример ruclips.net/p/PLvpsu6rFEzwVNyfaDAI9IEcWfwNMETkUP
      ну а вот то, что там показывается (это уже моё): cosa-nostra.h1n.ru
      там правда автор показывает на 6.20; я обновил до 8.40 обычным composer update, правда выдавало какую-то ошибку, вбил её в гугл, он сказал, что надо куда-то вставить какую-то строчку. вставил и всё работает

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

      @@Mr.Capone- планирую, времени просто мало:)

    • @user-vu7oy1ii3y
      @user-vu7oy1ii3y 3 года назад

      @@laravelcreative действительно дымится что то.

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

      @@laravelcreative , эти отношения "из жизни" просты и понятны, а вот вам в этот урок стоило вставить схемку - диаграмму, в которой вы показываете каким образом пример "из жизни" соотносится с тем синтаксисом, который вы рассказываете. Тогда бы усвоение было бы в разы лучше и быстрее. Мне например не понятно зачем вообще эти форин Ки, по-моему из баз и без них прекрасно информация достаётся.

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

    мой мозг. как все сложно 🤯 спасибо

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

    Спасибо за труд!

  • @eindummertoaster4308
    @eindummertoaster4308 Месяц назад

    Лучший

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

    Спасибо за урок, все прошло без ошибок, что радует)

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

    Очень классный курс. Смотрится на одном дыхании. 19 уроков за 2 дня просмотрел. Очень доступно всё объясняешь, респект!

  • @user-jy9fx9xu6d
    @user-jy9fx9xu6d 2 года назад

    Спасибо вам за уроки. Благадаря вам я очень хорошо придвигаюсь в изучиние Laravel.

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

    Пришлось использовать такой вариант, а то было несоответствие столбцов.
    $table->bigInteger('post_id')->unsigned();
    $table->bigInteger('tag_id')->unsigned();

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

    Спасибо, за урок!

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

    Это проще делать через сам запрос с помощью left outer join

  • @user-vu7oy1ii3y
    @user-vu7oy1ii3y 3 года назад +6

    Посоветуйте доп материал для изучения laravel. Сделайте выпуск по стратегии изучению laravel (базовые навыки, средняк и сеньор), прорекламируйте свои уроки, мб чужие, книжки, сайты, форумы и тд.
    Достаточно популярны ролики в стиле laravel за час

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

      Да, планирую сейчас серию общенаправленных роликов в виде стратегии развития/востребованность профессии и т.д. опубликовать)

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

    спасибо бро

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

    Если у кого то возникает проблема после попытки миграции на 4:27, можете как автор скачать sql lite или там где schema переименовать post_tags на apost_tags, конечно post_tags у вас останется если вы уже попытались мигрировать, но зато дурацкой ошибки больше не будет.

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

    Пользовался HeidiSQL, по пробовал Workbench, вернулся на HeidiSQL, там есть выпадающие списки в таблицах

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

      Теперь понятно у меня поста с id 2 нету

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

    Непонятно, зачем было удалять такой безобидный комментарий. Вопросы по теме запрещены на канале?)

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

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

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

    👍👍👍

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

    Добрый день, пытаюсь создать таблицы как в примере (4:27), однако у меня композер почему то пытается создать не новые таблицы а начинает пересоздавать таблицу POSTS, после этого говорит что такая таблица уже существует и прекращает работу. Можно ли задать миграцию для последних двух таблиц, а не для всех миграций?

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

      А какой код ты пишешь?)

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

      @@laravelcreative устранил эту ошибку путем переименования миграции posts (исправил время создания чтобы она была в папке последней), мне интересно это я что то не так делаю или это баг? код пишу точно как в уроке

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

      Может потому, что у меня sqlite, а там игнорируются много ограничения таблиц) Но это хорошо, что такая ошибка вылезла, опыт опыт опыт)

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

    "PDOException::("SQLSTATE[HY000]: General error: 1215 Cannot add foreign key constraint" вылетает при набор php artisan migrate. Я так понимаю, это из за движка и мне надо следить, чтобы все внешние ключи создавались в файлах ниже таблиц, к которым они обращаются?

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

      Да именно) Просто меняешь название у миграций, так чтобы те, которые нужны поднимались выше по списку и все)

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

      @@laravelcreative а какой порядок в итоге выставлять? Я перепробовал "тэги", "посты" сверху, "смешанная" внизу - не помогло
      Если наверх "смешанную", "тэги", затем "посты" - тоже ошибка, помогите, пожалуйста, разобраться в чем дело - впервые встречаю такую нелепую ошибку из-за порядка файлов в папке)

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

      @@TheTexProКак ты решил эту проблему ? Типа можно забить виг, и так все работать будет . у меня таблицы появились , но надпись меня бесит

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

      @@laravelcreative а зачем в миграциях указывать связь? ведь ее моно и в моделях показать. да я понимаю если в миграция то не даст сама база удалить нужную запись и так дальше.

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

    Опять меня смущает большое количество запросов в базу, например мы формируем страницу Новости, на странице выводим 30 новостей, а всего в базе у нас 5000 новостей, и более 50 категорий, общее количество связей по схеме многие ко многим болеее 50 000 связей, выводим первую новость и что бы на привью вытащить его категории, мы проверяет 50 000 записей, да мы не делаем это через цикл - это делает ларавел сам, но все же он сверяет каждую к каждому, на 30 статей нужно вот так пробежаться 30 раз по 50 000 связать, иттого 1 500 000 проверок что бы вывысти одну страницу. что я не так понял? не проще ли в таблице, с категориями, сохранить инфу в виде массива или json со значениями какие новости к ним относиться, и при запросе просто вытаскивать новости по списку, а в новости сохранить в таком же виже инфу по категориям, при созданиии // редактировании новостей или категорий - делать сверку связей. Если делать так - то можно сделать 1 500 000 запросов в базу 1 раз, а не при каждом обновлении страницы. я думаю что я просто тупой и не чего не понимаю...

    • @Technical_Expert
      @Technical_Expert Год назад +3

      просто "учитель" сам не в теме, он не рассказал для чего используются индексы. По сути индексы - это новая таблица сортировки, или соотвествий по определенному столбцу, я бы сказал новая таблица указателей на записи отсортированная по определенному столбцу (если брать аналогию языка си).

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

      fk позволяет избегать вот эти вот 100500 запросов в итоге получаем 1

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

    Всё же самый (пока что, не знаю, что там дальше) непонятный урок. Не в целом, но в некоторых моментах. Почему когда пишем в модели Пост метод Таг, у него указываем класс Таг, но таблицу указываем - пост_таг??? Надо более детальней разбирать такие моменты.

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

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

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

      Ой сложно сказать) В чем сложность то?

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

    а как сделать , что бы в шаблоне Blade при выводе всех постов отображалась их принадлежность к категории?

    • @user-ji3hj2jj1p
      @user-ji3hj2jj1p Год назад +1

      при выводе постов открыть цикл и уже вызвать метод $cat = $item->category; , а все это поместить в массив и передать в blade

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

      $post->category->title

  • @Technical_Expert
    @Technical_Expert Год назад +4

    Автор не любит конструктивную критику и поэтому удалил мой предыдущий коментарий?