Русское сообщество разработки на PHP-фреймворке Laravel.
Ты не вошёл. Вход тут.
Есть стандартный контроллер RegisterController.
Есть шаблон для него register.blade.
Шаблон расширяется @extends('main'), внутри которого есть переменные, например {{$title}}
Каким образом в контроллере установить эту переменную?
Не в сети
Похоже разобрался... Нужно в классе прописать свой вызов
public function callAction($method, $parameters)
{
return view('auth/register')->with([
'title'=>'Заголовок',
'description'=>'Описание']);
}
Не в сети
Можно так:
public function index()
{
$meta = [
'title' => 'qwqwqwqw',
'description' => 'qwqwqwq',
'keywords' => 'qwqwqwqw',
];
return view('register', $meta);
}
Не в сети
А что за index? Мне переопределить надо стандартный маршрут.
Пока сделал так
public function callAction($method, $parameters) {
if($method == 'showRegistrationForm'){
return view('auth/register')->with([
'title'=>'Заголовок',
'description'=>'Описание'
]);
}
else{
Controller::callAction($method, $parameters);
return redirect('/');
}
}
Но кажется очень кудряво... думаю, должны быть какие-то параметры класса, чтобы не переопределять методы.
Не в сети
Шаблон расширяется @extends('main'), внутри которого есть переменные, например {{$title}}
Из документации:
@extends('layouts.app')
@section('title', 'Page Title')
а в лейауте эту секцию выводишь через @yield.
В доке не нашел, но будет работать и передача через параметры.
Здесь синтаксис @extends такой же точно также как в @include
@extends('master', ['title' => $title])
после чего переменная $title будет определена в master.blade.php
Изменено doublevas (26.08.2019 19:26:35)
Не в сети
Здесь синтаксис @extends такой же точно также как в @include@extends('master', ['title' => $title])после чего переменная $title будет определена в master.blade.php
Точно ведь! Причем так думал изначально и казалось что проверил этот вариант.
Спасибо.
Не в сети