Вставьте функцию контроллера в представление с помощью Laravel - PullRequest
0 голосов
/ 18 апреля 2020

Я хочу вернуть результат моей функции в мой вид, используя маршрут. Это мой контроллер

class AnnonceController extends Controller
{
     public function annonceAffiche() {
         $data = Annonce::select('titre', 'description', 'prix')->get()->toJson();
         return $data;
     }
}

Мой вид

<html lang="{{ str_replace('_', '-', app()->getLocale()) }}">
<body>
    <div class="flex-center position-ref full-height">
        <h1>Liste</h1>

    </div>
</body>

Мой текущий маршрут

Route::get('/annonces', function() {
    return view('annonces', [
        'uses' => 'AnnonceController@annonceAffiche'
        ]);
});

Однако он показывает только мой вид, а не результат моего контроллера. Когда я изменяю свой маршрут для этого, я вижу результаты

Route::get('/annonces', [
'uses' => 'AnnonceController@annonceAffiche'
]);

Ответы [ 2 ]

0 голосов
/ 21 апреля 2020

Это простой способ для вас

return redirect()->route('annonces', $data)

И ваш маршрут выглядит следующим образом

Route::get('/{data}', 'AnnonceController@annonceAffiche')->name('annonces')
0 голосов
/ 18 апреля 2020

Вы можете использовать следующие

use App\Http\Controllers\AnnonceController;
Route::get('/annonces', function(AnnonceController $ctl) {
    return view('annonces', ['data' => $ctl->annonceAffiche()]);
});

Или через Фасады в реальном времени

use Facades\App\Http\Controllers\AnnonceController;
Route::get('/annonces', function() {
   return view('annonces', ['data' => AnnonceController::annonceAffiche()]);
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...