mar*_*ion 2 ruby-on-rails simple-form ruby-on-rails-5
我有一个Profile模型:
has_many :transcripts, dependent: :destroy
accepts_nested_attributes_for :transcripts, allow_destroy: true
Run Code Online (Sandbox Code Playgroud)
所以在我看来app/views/profiles/_form.html.erb,我有以下几点:
<%= f.simple_fields_for :transcripts do |transcript| %>
<%= render 'transcript_fields', f: transcript %>
<% end %>
Run Code Online (Sandbox Code Playgroud)
而app/views/profiles/_transcript_fields.html.erb看起来像这样:
<%= f.file_field :attachment, class: 'col-lg-4 form-control' %>
Run Code Online (Sandbox Code Playgroud)
所以我想做的就是_transcript_fields部分,当profile存在时transcripts,我希望它显示一个文件字段,其中包含附加文件的名称 - 如果他们想要更改附加的文件,他们可以只是点击相同的上传,file_field它将更新该Transcript记录.
我现在有实际的更新操作,但是会发生什么,它只是显示如下字段:
top file_field是现有文件,bottom是反映可以添加的新字段.
你不能.
设置文件输入值的唯一方法是当用户从他的系统中选择一个文件时.如果你强行这样做,它将在HTML中像这样.
<form name="foo" method="post" enctype="multipart/form-data">
<input type="file" value="c:/rails.png">
</form>
Run Code Online (Sandbox Code Playgroud)
这是出于安全原因.否则,您将能够创建一个自动从客户端计算机上传特定文件的Javascript,但如果您想要上传文件字段的某些编辑功能,您可能想要做的是:
希望我回答你的问题.
| 归档时间: |
|
| 查看次数: |
772 次 |
| 最近记录: |