我是 laravel 的新人,我想在主页上发布公告

I am new in laravel and I want to announcement on homepage

实际上我想在主页上显示管理员公告或任何通知,这样当任何用户使用凭据详细信息登录时,他或她就可以看到公告或通知..

请一步一步帮助我,如果可能的话代码逻辑,请为我做非常感谢

您可以借助内置的用户模型轻松完成。

首先,检查用户是否授权,然后,您可以显示公告部分。 所有这些都应该在您的页面视图中完成。你可以这样做

@if (Auth::check())
  //show authorized content (Announcements etc.)
@else
  //show unauthorized content
@endif

或者您也可以在 laravel 5.6

中执行此操作
@auth
    // The user is authenticated...
@endauth

@guest
    // The user is not authenticated...
@endguest

也为此做一些研究,互联网上有很多例子。

试试这个

@auth
// For Logged in users only
<h1> You Are Loged In</h1>

@endauth

@guest
// For Guest Users
   <h1> You  Are Guest </h1>

@endguest

@auth
//if user logged in
   <h1> You Are Loged In</h1>

@else
else guest
   <h1> You  Are Guest </h1>

@endauth

按照您要求的完整分步流程试试这个
首先在你的管理面板中像这样制作表格

<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 make post 方法

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;

现在您需要发布公告table和模型

php artisan make:model Announcement -m

它将生成 2 个文件模型和迁移
转到 database/migration 文件夹并将此行添加到

之后的公告迁移

$table->increments('id');

$table->string('text');
$table->boolean('active');

您的 table 现在可以迁移了

php artisan migrate

现在你可以在你的主页上这样显示了 首先转到您的家庭控制器并添加这些行

$announcements = App\Announcement::where('active', true)->get();
return view('home', compact('announcements'));

在您的 home.blade.php 文件中

//Only for Authenticated Users

@auth
 @foreach($announcements as $announcement)
  <p>{{ $announcement->text }}</p>
 @endforeach
@endauth

//Only for Guest Users

@guest
 @foreach($announcements as $announcement)
  <p>{{ $announcement->text }}</p>
 @endforeach
@endguest