如何使用 rails 表单助手创建复杂的文件字段?

How to create a complex file field using rails form helpers?

我有一个文件字段,用户可以在其中附加照片

<%= f.label :photo, "Add a photo of yourself" %>
<%= f.file_field :photo, class: "form-control" %>

我刚刚下载了一个 bootstrap 主题。

这里是 html 创建文件字段 bootstrap 主题:

<div class="fileinput fileinput-new input-group" data-provides="fileinput">
<div class="form-control" data-trigger="fileinput">
<i class="glyphicon glyphicon-file fileinput-exists"></i> 
<span class="fileinput-filename"></span>
</div>
<span class="input-group-addon btn btn-default btn-file">
<span class="fileinput-new">Select file</span>
<span class="fileinput-exists">Change</span>
<input type="file" name="..."></span>
<a href="#" class="input-group-addon btn btn-default fileinput-exists" data-dismiss="fileinput">Remove</a>
</div>

如何将主题的 html 转换为使用上述 rails 表单助手来创建文件字段?

<span class="fileinput-exists">Change</span>
<input type="file" id="CLASSNAME_photo" name="CLASSNAME[photo]"></span>

例如:嵌套照片在我的代码中看起来像这样:

<input id="blog_post_blogpostattachment_attributes_attachment" name="blog_post[blogpostattachment_attributes][attachment]" type="file">/</input>

应该是这样的,对于正确的 id 和名称,您可以通过检查文件字段在浏览器中检查。你知道的,检查渲染的 html.

然后添加您拥有的而不是 <%file_field%>。