gpt4 book ai didi

ruby-on-rails - 在 Rails 3.2 + SimpleForm 中显示带有嵌套表单错误的字段

转载 作者:数据小太阳 更新时间:2023-10-29 06:48:03 29 4
gpt4 key购买 nike

我有一个 Flight 模型嵌套在 FlightLog 模型中。 FlightLog 可能包含许多航类。

我在 Bootstrap 安装中使用 SimpleForm,这使得在验证失败时用错误类包围带有错误的表单元素成为可能。

问题是,即使为嵌套模型触发了验证,simple_fields_for 中有错误的字段没有被标记,因此无法确定哪个属性无效。

在调用创建操作时检查错误散列后,我可以看到它正确填充了顶层的错误,以及每个资源中嵌套资源的错误。

我如何修改 simple_form 的行为以将错误类添加到每个嵌套模型的控制组以匹配父级的行为?

提前致谢。

enter image description here

最佳答案

如果您将 simple_form 与 bootstrap 一起使用,这确实有效 - 您只需要正确设置几个项目:

1 - 使用 simple_form Bootstrap 包装器(来自 simple_form 2.0)- 您可以在 config/initializers/simple_form.rb ( https://github.com/rafaelfranca/simple_form-bootstrap) 下的 github 存储库中找到它们

2 - 要使嵌套表单显示错误,您必须确保提供了一个对象。 f.simple_fields_for :nested_model 不起作用,您需要使用 f.simple_fields_for parent_model.nested_modelf.simple_fields_for :nested_model, parent_model.nested_model 以便表单可以获取必要的对象。

如果您仍然没有得到任何东西,请通过在您的嵌套对象上输出错误数据来验证表单是否真的得到了您认为的对象,但有错误:parent_model.nested_model.errors.full_messages。 to_sentence

关于ruby-on-rails - 在 Rails 3.2 + SimpleForm 中显示带有嵌套表单错误的字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9978473/

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