我正在尝试在 RailsAdmin 中为我的一个模型创建一个自定义嵌套表单,以添加比内置小部件允许的更多功能。
我有一个拥有_many TechSpecs 的项目。在我的 rails_admin.rb 初始化程序中,我有以下内容
config.model Project do
edit do
configure :tech_specs do
partial 'tech_specs_field'
end
end
end
在 _tech_specs_field.html.haml 中(我个人更喜欢 erb,但我得到了非常奇怪的“no method safe_concat for nil:NilClass”错误,除非我使用 haml)我有
= form.fields_for(field.name) do |nested_form|
= render :partial => 'spec', :locals => {:nested_form => nested_form}
- add = "<i class='icon-plus icon-white'></i> New Tech Spec".html_safe
= form.link_to_add add, field.name, { :class => 'btn btn-info' }
实际上,我可以在页面底部的隐藏 div 中看到生成的新 tech_specs 的蓝图,但是单击 New Tech Spec 按钮什么也没做。_spec.html.haml 内部只是一堆 text_fields 和 hidden_fields 加上删除链接(确实有效)。
我想知道两件事:
1)我如何跟踪 JS 中应该发生的事情并修复它或我的部分以使用 bbenezech-nested_form gem 中的 RailsAdmin 嵌套表单(RailsAdmin 依赖于)
2)关于为什么我的部分必须在 haml 中,而不是 RailsAdmin 使用的任何想法,并且不知何故它在生成管理表单的大规模链中不兼容?