ruby-on-rails - 在不重新加载页面的情况下显示表单错误消息
问题描述
在 Rails 6.1 应用程序中,我已将新操作从单独的页面移动到模式,现在我试图弄清楚是否可以只显示错误消息(如果它存在,例如“名称不能是空白") 直接在表单中,而不是重新加载整个页面。因为即使在这种情况下,我也不知道如何直接重新加载表单并显示错误消息。
def create
@list = List.new(list_params)
if @list.save
redirect_to list_path(@list)
else
redirect_to root_path
end
end
这是使用 simple_form 创建的模态中存在的表单
<%= simple_form_for(@list) do |f| %>
<%= f.error_notification %>
<%= f.error_notification message: f.object.errors[:base].to_sentence if f.object.errors[:base].present? %>
<div class="form-inputs my-3">
<%= f.input :name, required: true %>
</div>
<div class="form-actions">
<%= f.button :submit %>
</div>
<% end %>
另一种解决方案是使用闪光灯,但如果错误消息直接显示在表单中而不重新加载整个页面,我会更高兴。
如果有帮助,这是我目前的项目
解决方案
我建议您将client_side_validations gem 与client_side_validations-simple_form结合使用,因为您使用的是simple_form
. 它实现了您正在寻找的东西。
推荐阅读
- python - os.path.join 访问文件阻止重命名操作
- laravel - 如何在 Laravel 中的 index.php 之后重定向 url
- windows - How to split string in batch-file
- django - 关于 save(update_fields) 方法细微差别的问题,Django
- c# - Why C++ msgpack-c adds number 13 (0x0D) before number 10 (0x0A), but C# MessagePack-CSharp does not?
- python - 带有两个提交按钮的错误请求
- python - 重命名更改目录中的 CSV 文件名
- sas - 在 SAS 中使用带有 by 语句的 sgplot 时如何在 png 文件名中插入 #byval 值
- python - 如何使用 Python 在数据框中查找字符串匹配项
- python - Scrapy嵌套项目图像管道