#php #get #laravel-5.7
#php #получить #laravel-5.7
Вопрос:
У меня есть вопрос, который я не могу решить в данный момент.
У меня есть и URL-адрес, подобный этому: https://www.example.com/schedule/2020-02-26
я помещаю дату в URL-адрес с помощью следующей функции:
public function newdate($datevar)
{
$Dates = Dates::all();
return view('schedule', compact('Dates'), ['Dates' =>
$Dates]);
} //
В этом примере значение $datevar равно «2020-02-26»
Мой вопрос в том, как я могу показать $datevar в моем блейде? Я пытаюсь с помощью {{$datevar}}, но я получаю сообщение об ошибке.
Чтобы поместить datevar в мою функцию, я использую и другую функцию в качестве запроса:
public function addnewdate(Request $request){
$datevar = $request->input('newdate');
return redirect()->to('schedule/'.$datevar);
}
Спасибо за вашу помощь
Комментарии:
1. вы должны передать переменную в файл блейда при вызове функции просмотра
Ответ №1:
Решение состоит в том, чтобы зарегистрировать формат URL в web.php
файле. В этом файле добавьте эту строку:
Route::get('/schedule/{date}', [ControllerName::class, 'addnewdate']);
Теперь, всякий раз, когда вызывается метод контроллера, он передает дату в качестве аргумента вашему addnewdate
методу, который вам нужно реструктурировать следующим образом:
public function addnewdate($date){
//Do sth with the date
}
Комментарии:
1. Да, я делаю это так и работаю, но как я могу показать дату на моем blade.php ?
2. Вы уже сделали
view('schedule', compact('Dates'), ['Dates' => $Dates]);
это, просто обратившись к$Dates
переменной из вашего блейд-файла.3. Нет, мне не нужны даты в долларах на моем blade.php Мне нужно увидеть $datevar на моем blade.php
4. Хорошо, так что добавьте это.
return view('schedule')->with('Dates', $Dates)->with('dateVar', $datevar)
.5. Я ценю вашу помощь, сейчас работает: D