ファイルのアップロード・ダウンロードの実装メモ。
Documentモデルにfileというカラムを用意しておき、
そこにファイル名だけ保存する。
ファイル自体はpublicフォルダ配下にdocsというフォルダを作成して
そこに保存していくようにする。
scaffoldで作成されたコードから変更を加えていく。
まずはコントローラの設定。
app/controller/documents_controller.rb
save_fileアクションはファイルを保存したあと、
original_filenameメソッドで取得したファイル名を返す。
つぎにarchiveアクションのルーティングの設定をしておく。
config/routes.rb
最後にビューの設定。
form_forメソッドで、:multipartオプションを有効にしておくのを忘れずに。
fileldのヘルパーはfile_fieldに変更。
app/views/documents/_form.html.erb
app/views/documents/index.html.erb
これでファイルの保存ができ、保存したファイルはリンクをクリックして
ダウンロードできるようになる。
0 件のコメント:
コメントを投稿