Railsでファイルのアップロードに問題が発生しました。私はform_for(@some_model)
と一緒に使用できるfile_field :file
ヘルパーを見つけました。しかし、私は、これらのタグは質量の割り当てによっていくつかのモデルを作成/編集するために使用されるため、このケースの用途は見つけられません。 AFAIKは、ファイルアップロードを典型的なフィールドとして扱うことはできません(File upload won't work in Ruby on Rails 3 using Multipart Form参照)。このような場合は、アップロードしたファイルを手動で操作する必要があります。だから、なぜ誰かがモデル編集の一環としてファイルアップロードをしたいと思っているのだろうか?ファイル属性:theresの無いため、上記のRuby On Rails:form_forのfile_fieldの例
photo.rb
class Photo < ActiveRecord::Base
attr_accessible :name, :filename,
end
photo_form.html.erb
<%= form_for(@photo, :multipart => true) do |f| %>
<%= f.label :name %>
<%= f.text_field :name %>
<%= f.file_field :file %>
<%= f.submit %>
<% end %>
photos_controller.rb
def create
@photo = Photo.new(params[:photo])
ラインは、失敗します。以前に処理して手動で:params
から削除する必要があります。もう一度 - そのようなタグの実際の使用法はありますか?
を持っている場合、あなたが持っているなら、私は、ちょっと知ってみましょう役に立てば幸い、十分自体を説明してだと思います他のフィールドやラベルを持っている間にform_forを使ってファイルをアップロードする方法を知っていたら、ここでそれを共有してください。私もこの仕事をしようとしています。 – learner
そして、宝石を使う必要がないならいいですね。 – learner
あなたのビュー '<%= f.file_field:filename%>'で 'attr_accesible:name、:file'を試してみたらどうなりますか? – mmichael