как вы просили для полного пошагового процесса, попробуйте это
сначала создайте форму в вашей админ-панели, как это
<form method="post" action="{{ route('announcement') }}">
<label>Enter Your Announcement</label>
<textarea class="form-control" name="text">
</textarea>
<select name="active_status">
<option value="0">Deactive</option>
<option value="1">Active</option>
</select>
</form>
открой свой route/web.php
метод поста
Route::post('/announcement', [
'uses' => 'AdminController@postAnnouncement',
'as' => announcement
]);
если у вас есть AdminController и все в порядке, если вы не сделали это с этими командами
php artisan make:controller AdminController
теперь вы можете добавить свою функцию для сохранения вашего объявления в базе данных
public function postAnnouncement(Request $request){
$announcement = new Announcement;
$announcement->text = $request->text;
$announcement->active = $request->active_status;
$announcement->save();
return back()->with('status', 'Announcement Posted Success');
}
добавить use App\Announcement;
в верхней части вашего контроллера
теперь нужно сделать таблицу объявлений и модель
php artisan make:model Announcement -m
сгенерирует 2 файловых модели и миграцию
перейдите в папку database/migration
и добавьте эту строку в миграцию объявлений после
$ table-> приращения ( 'ID');
$table->string('text');
$table->boolean('active');
ваш стол готов к переносу
php artisan migrate
теперь вы можете показывать на своей домашней странице вот так
сначала зайдите в свой домашний контроллер и добавьте эти строки
$announcements = App\Announcement::where('active', true)->get();
return view('home', compact('announcements'));
в вашем файле home.blade.php
// Только для аутентифицированных пользователей
@auth
@foreach($announcements as $announcement)
<p>{{ $announcement->text }}</p>
@endforeach
@endauth
// Только для гостей
@guest
@foreach($announcements as $announcement)
<p>{{ $announcement->text }}</p>
@endforeach
@endguest