问题标签 [rails-flash]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ruby-on-rails - 如何在响应 Ajax 请求后清除 Rails flash 对象?
我正在为我的一些控制器操作做这种事情:
它工作得很好,并且闪光警报和通知显示得很好。但是当用户点击转到另一个页面时,flash 消息会再显示一次。由于我处理它们的方式,Rails 显然不知道它们已被使用。完成上述渲染后如何清除它们?
ruby-on-rails - 如何在重定向时显示 Rails flash 通知?
我在 Rails 控制器中有以下代码:
然后在 /check_in 视图中:
但是,通知没有出现。如果我不在控制器中重定向,则效果很好:
不过,我需要重定向……而不仅仅是该动作的渲染。重定向后我可以有一个快速通知吗?
ruby-on-rails - NoMethodError:Rails 3 中未定义的方法“[]”
这是我的 SessionsController
结尾
这是 routes.rb
以及新视图和销毁视图的各自路线。
这是新的.html.erb
错误就像。
我要实现的是,成功/失败的登录应该使用 Flash 消息呈现各自的视图。 我哪里错了。我是 ROR 的新手
ruby-on-rails - 在 Ruby On Rails 中一致地显示 Flash 消息和模型验证错误
人们是否使用统一的系统在他们的应用程序中显示 Flash 消息和模型验证错误?还是你把它们分开?
是否有公认的最佳实践?或者它是否会被显示它们在视觉上有意义的地方所驱动。
这个问题是在使用设计 gem 之后出现的,因为它显示通过 flash 登录的模型错误,我想为用户提供一致的体验。
ruby-on-rails - 转换到 Angularjs 时如何强制 Rails 放弃 Flash 消息?
目前我正在开发一个使用由 rails 支持的纯 angularjs 单页 js 应用程序的站点。唯一仍在使用 rails 视图的是用于登录、密码重置等的设计页面。一旦用户登录,我将它们转发到 angularjs url。但是,当用户注销时,他们会返回到 rails 登录页面,在那里他们会看到一条非常陈旧的 flash 消息。
我在想我可以让 Angular 对 rails 控制器执行 $http ping 操作,强制 rails 执行flash.clear()
. 但这似乎不起作用。当我注销时,最后的设计消息仍然存在。
javascript - ajax调用后Rails不显示flash消息
我正在编写一个 rails 4.0.2 应用程序,并试图在 AJAX 事件之后在我的视图中显示一个 Flash 通知。
在我看来,我显示了一个日历,其中包含用户可以点击的日期。当他们这样做时,我通过 onclick 事件处理程序触发 AJAX 事件,该事件处理程序更新我的模型,添加或删除记录。触发事件后,我完成了页面刷新以显示更新的结果。
我发现我必须在 JS 单击事件期间进行页面刷新,才能正确更新视图。仅在控制器中进行重定向或渲染是不够的。
所以,为此,我在我的控制器中设置了一个 Flash 通知......
...并在我的application.haml中包含以下闪存显示逻辑...
注意:在我的观点中,我使用 HAML 而不是 ERB
然而,无论我尝试什么,Flash 消息都不会显示。除了Flash 消息外,其他一切都按预期工作,我无法弄清楚原因。
我怀疑这与我正在做的 AJAX 刷新与重定向(甚至可能是 turbolinks)有关,但我已经在 SO 上查看了其他答案,但根本无法让它工作。显然,我错过了一些东西。
这是 JS 点击处理程序(非常简单):
ruby-on-rails - Rails:注意:消息不会消失使用 rails_layout gem?
我不确定这是一个错误还是什么,但通知消息并没有消失,我查看了许多其他示例,但没有一个可以解释我的情况:就像这些: 为什么 flash 消息不会消失?
我使用了Rails_Composer,我答应自己不再使用它,因为它让我做了一场噩梦
这是我在文件中加载的内容:
当Rails_Composer生成文件时,这就是我们在布局中的内容:
知道如何解决这个烂摊子吗?
twitter-bootstrap - Rails 错误和通知 flash 没有正确显示 css 样式
我有一个简单的控制器来检查 ActiveModel 的有效性。如果模型有效,它会显示 :success 闪烁消息。如果不是,则显示错误闪烁消息。成功闪烁消息显示正确(绿色字体和背景)。错误消息未正确显示(红色背景上的字体不是红色)。我注意到这同样适用于 :notice 标志。当我将 :error 标志更改为 :warning 时,它会正确显示(黄色背景上的黄色字体)。我想这是某种奇怪的 CSS 问题,但我不知道如何调试它。有什么建议么?
这是控制器的代码:
这是 application.html.erb:
这是视图:
这是 :success flash 的截图:
这是 :error flash 的屏幕截图:
如您所见,错误闪烁以纯字体显示,没有背景。当控制器中的标志更改为 :warning 字体和背景设置正确时。所以只是 :error flash 和 :notice 标志没有正确显示。该怎么办?
ruby-on-rails - Rails Flash 的行为不像 Rails 指南所说的那样
闪光
flash 是会话的一个特殊部分,每次请求都会清除它。这意味着存储在那里的值将仅在下一个请求中可用,这对于传递错误消息等很有用。
...
flash.now
默认情况下,将值添加到闪存将使它们可用于下一个请求,但有时您可能希望在同一个请求中访问这些值。
但是,在做了一些测试之后,我发现它flash
在当前和下一个请求中可用。并且flash.now
仅在当前请求中可用。
Rails 指南不正确吗?或者,也许我错过了什么?
ruby-on-rails - 替换 devise_error_messages!带有闪信息
我使用生成了我的设计视图rails g devise:views users
我使用生成了我的设计控制器rails g devise:controllers users
我在以下位置添加了我的新控制器routes.rb
:
我根据这个答案更改了我的闪存消息以处理数组:rails - 设计 - 处理 - devise_error_messages
像这样:
我的新自定义注册控制器:
当我添加这一行时:
我收到此错误:
Users::RegistrationsController:Class 的未定义局部变量或方法“flash”