如果你想解決服務器端的問題您可以利用會話門面,像這樣:
在你的控制器:
function create() {
if(Gate::allows('createAccess')) {
Session::flash('error', 'You don't have enough permissions to access this item!');
return redirect()->back();
}
// Create the model or perform any other logic
Session::flash('success', 'An entity has been created successfully!');
return view('entities.show');
}
然後你就可以有一個局部命名message.blade.php它包含在您的entities.show視圖中:
@if (Session::has('message'))
<div class="alert alert-info">
<p>{{ Session::get('message') }}</p>
</div>
@endif
如果您想解決客戶端問題您可以在成功回調調用你的消息功能(例如甜警報消息)當請求已成功完成:
function showMessage() {
$.ajax({
url: 'your-url',
data: {
// Your data here
},
success: function() {
// Show success message
},
error: function() {
// Show error message
}
});
}
Im相當肯定的AJAX算作拉存儲該第二個請求,該Flash消息僅適用於第一個請求(即,當頁面加載時)。 – Severian
@Severian這就是我的想法。有沒有辦法解決這個問題?我想避免使用'會議::把()' –
@Alexander Lomia:對於這一點,我會建議你使用甜警報。請選擇這個:[https://github.com/uxweb/sweet-alert]。它比閃光消息更好。:) –