Laravel: session()->flash() 和 session()->now() 的区别
Laravel: difference between session()->flash() and session()->now()
我尝试在给出错误参数时显示一条闪现消息。
我试过这样做:
with session()->flash('error', 'error message.');
并返回视图,但是当我在 url 中放置一个正确的参数时,我不得不加载两次以使视图显示而不仅仅是错误消息。
尝试使用时(因为在我发现的一些 SO 答案中推荐了它):
session()->now('error', 'error message.');
有效;我在 url 中输入了正确的参数,只需要重新加载一次。
现在我想知道这两者有什么区别?
我读过他们都应该只为一个请求留下,但显然他们不一样...
flash()
方法用于在会话中存储数据,仅供下一次请求使用。这就是为什么您必须重新加载您的应用程序两次。
另一方面,now()
是立即使用的,您使用此方法存储的数据会在您提出新请求后立即删除。
因此,使用哪种方法基本上取决于您何时需要访问数据(当前或下一个请求)。
我尝试在给出错误参数时显示一条闪现消息。
我试过这样做:
with session()->flash('error', 'error message.');
并返回视图,但是当我在 url 中放置一个正确的参数时,我不得不加载两次以使视图显示而不仅仅是错误消息。
尝试使用时(因为在我发现的一些 SO 答案中推荐了它):
session()->now('error', 'error message.');
有效;我在 url 中输入了正确的参数,只需要重新加载一次。
现在我想知道这两者有什么区别?
我读过他们都应该只为一个请求留下,但显然他们不一样...
flash()
方法用于在会话中存储数据,仅供下一次请求使用。这就是为什么您必须重新加载您的应用程序两次。
另一方面,now()
是立即使用的,您使用此方法存储的数据会在您提出新请求后立即删除。
因此,使用哪种方法基本上取决于您何时需要访问数据(当前或下一个请求)。