ruby-on-rails - Rails 回形针和文件类型
问题描述
在我的 Rails 应用程序中,用户可以上传文档(pdf、png、doc ie...),但分为几个类别(用于业务规则)。例如,类型 1 是“身份证”,类型 2 是“简历”......即.. Whit 回形针我创建模型和控制器(和数据库表)来存储这些文档,并且我添加了一个自定义字段“typedoc”(整数) 我想根据上传的“类型”文件设置带有整数的 typedoc 字段...
鉴于此,我为每个“类型”重复以下代码。如何为每种类型更新文档表中的自定义字段?如何将 typedoc var 传递给控制器进行更新?
提前致谢
<%= form_for @user, url: user_documents_path(@user) , method: 'post',
html: {multipart: true} do |f| %>
<div class="row">
<div class="col-md-4 form-group">
<span class="btn btn-default btn-file">
<i class="fa fa-cloud-upload" aria-
hidden="true"></i> Choose doc 1
<%= file_field_tag "documents[]",
type: :file, multiple: true %>
</span>
</div>
<div class="col-md-4 body ">
<%= f.submit "Add id card", class: "btn
btn-form" %>
</div>
<div class="col-md-4 form-group"
id="documents"><%= render 'documents/documents_list' %></div>
</div>
<% end %>
...
解决方案
您可以使用此表单的 url 传递 typedoc
例如,用户单击upload id_card
链接,然后您可以将其传递为
new_user_document_path(typedoc: 1)
并以形式动态传递 typedoc -
<%= form_for @user, url: user_documents_path(@user) , method: 'post',
html: {multipart: true} do |f| %>
<div class="row">
<div class="col-md-4 form-group">
<span class="btn btn-default btn-file">
<i class="fa fa-cloud-upload" aria-
hidden="true"></i> Choose doc 1
<%= f.file_field :documents, multiple: true, name: "user[documents][]"%>
</span>
</div>
<!-- set value accordinly if you according to type of document eg: -type 1 is "id card", type 2 is "resume"... ie. -->
<%= f.hidden_field :typedoc, value: params[:typedoc]%>
<div class="col-md-4 body ">
<%= f.submit "Add id card", class: "btn
btn-form" %>
</div>
<div class="col-md-4 form-group"
id="documents"><%= render 'documents/documents_list' %></div>
</div>
<% end %>
推荐阅读
- sql - 如何选择a列,b列,c列用逗号分隔所有值,d列用逗号分隔所有值,e列选择查询?
- php - 在新库 codeigniter 中加载语言时在 null 上调用成员函数 load()
- azure-active-directory - Azure B2C 实现重定向 404 问题
- ajax - Laravel 数据表 - 未定义函数的错误
- java - 在 Timer 类对象中使用 Main 方法中的 NULL Autowired 对象
- javascript - 在 firebase auth 和实时数据库中获得相同的 id
- javascript - 服务工作者获取的响应中未包含“Content-Length”标头
- angular - 角度优化:APP_INITIALIZER 如何从外部发出的 HTTP 请求中读取响应
- r - 如何使用 purrr 和管道顺序应用函数
- c# - Unity 激励视频广告