2 / 2 / 1
Регистрация: 10.07.2018
Сообщений: 20
1

Принцип работы Blade, @section, @extends и прочее

16.08.2019, 20:05. Показов 4315. Ответов 5

Author24 — интернет-сервис помощи студентам
Доброго времени суток, господа разработчики. Относительно недавно нашел свою первую работу в IT . Работа удаленная, небольшая команда. Используем laravel, php, js. Делаем конструктор сайтов для продаж. Я отвечаю за дизайн. С бэкендом у меня все плохо. Из навыков - html, css, bs4, ну и js на уровне работы с DOM.

Так вот, ближе к делу. при попытке стилизовать одну из страниц проекта возникла проблема непонимания каких-то @section, @show, @extends и тд. Позже выяснилось, что это атрибуты шаблонизатора Блейд. Документацию я почитал, принцип работы понял. Но это только на бумаге. В действительности же, при изменении контента внутри секции (даже просто при смене текста в ссылке) ничего не меняется.

Объясню на примере меню проекта.

Есть у меня папка views. В ней есть папка templates, в которой лежит funnels.blade.php

Принцип работы Blade, @section, @extends и прочее


В этом файле через атрибут @extends (поправьте, если неправильно это называю) "вызывается" layout_clientpage.blade.php , который лежит в папке layouts. После изменения текста ссылки одной из кнопок с "Монитор" на "Монитор 1", ничего не изменилось. В меню на локальном сервере все также отображается "Монитор". Я бы понял, если бы стёр что-то лишнее, но я даже элементарно текст в ссылке поменять не могу. Объясните неофиту что он делает не так.

Не хочу потерять свою первую работу
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
16.08.2019, 20:05
Ответы с готовыми решениями:

Принцип работы NjRat, DarkComet и прочее
Приветствую форумчане, уже 3-ю ночь понять не могу... Увидел такую программу как NjRat, у меня...

Cобытийность. Принцип использования и принцип работы событий в jQ и GCT
Добрый день. Подготавливаюсь к собеседованию по чеклисту и не могу найти ответ на вопрос:...

Компьютер для работы с 1C бух учет и прочее
Нужна подборка комплектующих с нуля . для работы с программами 1с бух учет ,всякими таблицами ,...

Как убрать вывод компонента catalog.section.list в компоненте catalog.section
Если нажать на первый уровень каталога рис 1 появляется весь товары этого уровня. Но и выводятся...

5
162 / 150 / 97
Регистрация: 24.12.2013
Сообщений: 744
Записей в блоге: 12
16.08.2019, 20:58 2
Цитата Сообщение от Marchuk Посмотреть сообщение
layout_clientpage.blade.php
прямо так и вызывается?

@extends это наследования. допустим у тебя есть меню. тебе его надо показывать на всех страницах. и чтобы не писать по 100 раз одно и то же (и при исправлении и того хуже) ты просто подключаешь этот файл

@section - определение секции.

Допустим. ты наследуешь @extends('layout.app')
дак вот. чтобы на странице показывалось все в файле котором прописан @extends надо использовать секции

пример
layout/app.blade.php
PHP
1
2
3
4
<html>
<head></head>
<body>
@yield('content')//добавляем секцию для контента
файл funnels.blade.php
PHP
1
2
3
4
5
@extends('layout.app') //наследуем основной шаблон все стили. все скрипты и вообще все что в нем есть
 
@section('content') //а вот и секция которую вставляем в основной шаблон
html всякий разный
@endsection
Конечно объясняльщик из меня тот еще. но я так понимаю)
Если есть вопросы пиши)
1
2 / 2 / 1
Регистрация: 10.07.2018
Сообщений: 20
16.08.2019, 21:08  [ТС] 3
brain-4-me, не, подключение вот так прописано @extends('layouts.layout_clientpage'). Но тут дело даже не в этом, а в том, что я меняю содержимое секции, сохраняю изменения в файле, а на сервере все так же :/
0
162 / 150 / 97
Регистрация: 24.12.2013
Сообщений: 744
Записей в блоге: 12
16.08.2019, 21:13 4
Marchuk, значит что то неверно подключено или не там меняешь. показывай код)
0
2 / 2 / 1
Регистрация: 10.07.2018
Сообщений: 20
16.08.2019, 21:50  [ТС] 5
brain-4-me, отходил подумать о жизни.
Вот код файла, ответственного за меню (layout_clientpage.blade.php):

HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<div class="container" id="layout-clientpage-area">
    <div class="col-md-1" id="layout-clientpage-menu">
        <div class="layout-clientpage-menu-block">
            <div class="layout-clientpage-menu-block-avatar">
                <img src="http://artweb.cc/images/emptyreview.png" alt="">
            </div>
            <div class="layout-clientpage-links-block">
                <a href="{{route('client_cabinet')}}" class="layout-clientpage-link">Монитоq</a>
                <a href="{{route('client_funnels')}}" class="layout-clientpage-link">Воронка</a>
                <a href="#" class="layout-clientpage-link">Платежи</a>
                <a href="#" class="layout-clientpage-link">Доступы</a>
                <a href="#" class="layout-clientpage-link">Метрика</a>
                <a href="#" class="layout-clientpage-link">Настройки</a>
            </div>
        </div>
    </div>
    <div class="col-md-11 layout-clientpage-content">
        @yield('content')
    </div>
</div>
Вот код из так называемого шаблона из папки templates (funnels.blade.php):

HTML5
1
2
@extends('layouts.layout_clientpage')
...
0
1992 / 1216 / 440
Регистрация: 13.06.2013
Сообщений: 4,115
16.08.2019, 21:53 6
1) Убедитесь что этот шаблон вообще вызывается. Удалите его например.
2) Кэши всякие проверьте.
3) Спросите у коллег, это вполне нормальная практика. Тем более это их проект, они могли что угодно там натворить) Если они как-то криво посмотрят, то лучше бежать оттуда.
0
16.08.2019, 21:53
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
16.08.2019, 21:53
Помогаю со студенческими работами здесь

Принцип работы
ЗДравствуйте, первый вопрос по поводу выпадающего списка - его можно создать только через...

Принцип работы ОУ в DC-DC
Подскажите как работает нижний по схеме ОУ. А то не как не пойму. Светодиоды по моему вообще...

Фотогалерея. Принцип работы.
Доброго времени суток всем! Есть такая задача, с которой бьюсь уже не одну неделю. Как сделать...

Принцип работы коммутатора
Подскажите пожалуйста, есть интернет 150 Мбит/с, по шнуру выдает заявленные 150, по вайфай 40 на...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru