gpt4 book ai didi

ruby-on-rails - 什么是 ruby​​ on rails 中的 flash hash

转载 作者:行者123 更新时间:2023-12-04 06:33:47 24 4
gpt4 key购买 nike

我是一名经验丰富的 PHP 开发人员,但不熟悉 RoR,并试图了解每件事的工作原理。我知道如何使用 flash hash,即在我的操作方法中,我会设置

flash[:notice] = 'some message'

在我看来,我会展示它。
这个机制也在 Yii 框架中实现。我明白它在那里是如何工作的。我不明白的是它在 RoR 中的实际工作方式。 flash只是一个局部变量,那么如何在我的 View 中访问它?

最佳答案

flash其实是一种方法。它不在您的 Controller 中,而是在 Rails Controller 中 delegatesrequest object .所以flash方法在请求对象中定义,但您可以从 Controller 和 View 访问它。

查看 ActionDispatch::Request 的链接代码。设置时,闪存实际上存储在 session 中。下次用户请求页面时,可以在 View 中访问 Flash 以供使用。

在您看来,您可以像这样访问它:

<%= flash[:notice] %>

或者以一种更美观的方式(这只能通过注意和警觉来完成,因为它们是如此频繁地使用):
<%= flash.notice %>

documentation想要查询更多的信息。

关于ruby-on-rails - 什么是 ruby​​ on rails 中的 flash hash,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23453538/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com