ruby-on-rails - 在 Ruby On Rails 中一致显示闪现消息和模型验证错误

标签 ruby-on-rails error-handling devise rails-flash

人们是否使用统一的系统在应用程序中显示闪现消息和模型验证错误?或者你把它们分开吗?

是否有公认的最佳实践?或者是否会受到在视觉上有意义的显示位置的驱动。

这个问题是在使用 devise gem 后出现的,因为它显示通过 flash 登录的模型错误,我希望为用户提供一致的体验。

最佳答案

使用 Rails Composer 一段时间后 -- http://railsapps.github.io/rails-composer/ -- 我喜欢他们格式化消息的方式,因此我养成了这个习惯,但这很大程度上是偏好。

在应用程序布局中,在标题下方的顶部附近调用 = render 'messages',用户在某个地方接收消息是有意义的。

然后在消息部分:

- flash.each do |name, msg|
  - if msg.is_a?(String)
    %div{:class => "alert alert-#{name == :notice ? "success" : "error"}"}
      %a.close{"data-dismiss" => "alert"} ×
      = content_tag :div, msg, :id => "flash_#{name}"

我使用 simple_form,它使用 f.error_notification 为表单提供内联错误消息。

它具有一致的外观,错误消息始终相同,通知始终相同,信息始终相同。请记住,如果您使用模态框,则需要将消息直接添加到模态框主体的消息显示中。

关于ruby-on-rails - 在 Ruby On Rails 中一致显示闪现消息和模型验证错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19116637/

相关文章:

ruby-on-rails - 如果 config.cache_classes = true,Rails 找不到模块

python - 从Python异常中删除路径

java.lang.RuntimeException : Unable to start activity ComponentInfo Android Eclipse 错误

ruby-on-rails - 设计从 gem 而不是生成的渲染默认 View ?

ruby-on-rails - 设计是否与 declarative_authorization 兼容?

ruby-on-rails - “bundle install”在安装rspec时失败

mysql - 未定义的方法 `add_foreign_key'

angular - 如何计算重试运算符是否执行了次数,是否发生错误异常

ruby-on-rails-4 - 如何使所有单个用户 session 无效?

ruby-on-rails - 如何在 Rails 中更新模型属性