Laravel:session()->flash() 和 session()->now() 之间的区别



当给出错误的参数时,我试图显示一条闪烁消息
我试过这样做:

with session()->flash('error', 'error message.'); 

并返回视图,但当我在url中放入一个正确的参数时,我必须加载两次才能让视图显示,而不是只显示错误消息。

当尝试它时(因为它在我发现的一些SO答案中被推荐(:

session()->now('error', 'error message.');

它奏效了;我把正确的参数放在url中,只需要重新加载一次。

现在我想知道这两者之间有什么区别
我读到他们应该只留下一个请求,但显然他们不一样。。。

flash()方法仅用于在会话中存储下一个请求的数据。这就是为什么你必须重新加载你的应用程序两次。

另一方面,now()是立即使用的,使用此方法存储的数据在发出新请求后立即删除。

因此,使用哪种方法基本上取决于何时需要访问数据(当前或下一个请求(。

最新更新