【发布时间】:2013-03-31 14:39:57
【问题描述】:
我在检索文件上传信息时遇到问题。我刚开始学习 Rails。
我正在使用 ruby 2.0.0p0 和 Rails 4.0.0.beta1
这是我的表格:
<%= form_for(@person, :html => { :multipart => true }) do |f| %>
<div class="field">
<%= f.label :photo %><br />
<%= f.file_field :photo %>
</div>
<div class="actions">
<%= f.submit %>
</div>
<% end %>
在我的 person.rb 模型中:
def photo=(file_data)
logger.debug("PHOTO")
logger.debug(file_data)
logger.debug("END OUTPUT PHOTO")
unless file_data.blank?
@file_data = file_data
self.extension = file_data.original_filename.split('.').last.downcase
end
end
我可以在控制台中看到没有任何反应(没有“PHOTO”输出),永远不会调用 photo 方法。 这是为什么呢?
当我查看控制台时,我还看到了让我担心的这一行:
Unpermitted parameters: photo
这是什么意思?
【问题讨论】:
-
如果你刚开始学习 Rails,我不会在 Rails 4 beta 正式发布之前使用它。您遇到的确切问题可能不会在 Rails 3.2 中发生。
-
你是对的。我想我在安装 Rails 时没有注意。我会尝试切换回 3(无论如何我的学习书都是为 Rails 3 准备的)
标签: ruby-on-rails forms ruby-on-rails-4