furodrive

menu

[Django] ユニークなファイル名で画像をアップロードする tips

  • Code
  • django
  • python
  • 2015-05-28

uuidを使ったファイル名でアップロードすることにより、ファイル名がかぶるのを防ぐことができる。

import uuid
...
def get_file_path(instance, filename):
    ext = filename.split('.')[-1]
    name = "%s.%s" % (uuid.uuid4(), ext)
    return os.path.join('upload_to_dir', name)


class YourModel(models.Model):
    data = models.ImageField(upload_to=get_file_path,null=True)
    created_date = models.DateTimeField(auto_now = True)

Related Contents

  • [ Python ] 現在の Git のブランチ名を取得
  • [ Python ] AWS Lambda を使って LightSail のスナップショットを作成
  • [ Python ] AWS KMS を使って暗号化と復元を行うkms_encrypterを作った
  • [Flask-SQLAlchemy] n日以内に誕生日が来るユーザーを近い順に並び替える
  • [ Flask ] リクエスト処理をマルチスレッドで対応する

Pickup Contents

  • AjaxでファイルをPOSTする
  • wordpress-xmlrpc を使って WordPressに記事をPythonスクリプトで投稿する
  • Django1.7から追加されたmigration周りについてメモしておく
  • UILocalPushNotificationの使い方
  • Flaskで作ったWebアプリをHerokuで最速公開するためのheroku-readyというテンプレートを作りました

Works

iOSアプリ - 『うつチェック!』

うつ病の早期発見と体調管理を行うアプリ。

iOSアプリ - 『KeepDo』

タスクを習慣に変えるライフハック系アプリ。

最近の投稿

  • [Django] request.FILESに格納された画像をHTMLに出力する
  • [ Python ] 現在の Git のブランチ名を取得
  • [ Python ] AWS Lambda を使って LightSail のスナップショットを作成
  • Vuex で フォームのバリデーションを実装するにはデータバインディングを使わない方がいい
  • [ Python ] AWS SES を使ってメールを送信する
  • [ Go言語 ] 複数のシステムコマンドをまとめて実行する
  • [ JavaScript ] 連想配列を複数の要素で並び替える
  • [Pycharm] 画面分割時において、ファイルを開いたら今のタブから移動してしまう不満を解決
  • [ Python ] AWS KMS を使って暗号化と復元を行うkms_encrypterを作った
  • Vue-TypeScript-Starter を作った

アーカイブ

  • 2018年10月 (1)
  • 2018年5月 (2)
  • 2018年3月 (1)
  • 2018年2月 (1)
  • 2018年1月 (2)
  • 2017年12月 (1)
  • 2017年10月 (5)
  • 2017年8月 (3)
  • 2017年7月 (1)
  • 2017年6月 (3)
  • 2017年4月 (1)
  • 2017年3月 (5)
  • 2017年2月 (1)
  • 2017年1月 (2)
  • 2016年12月 (4)
  • 2016年11月 (1)
  • 2016年10月 (2)
  • 2016年9月 (4)
  • 2016年8月 (2)
  • 2016年7月 (2)
  • 2016年6月 (3)
  • 2016年5月 (2)
  • 2016年4月 (2)
  • 2016年3月 (1)
  • 2016年2月 (2)
  • 2016年1月 (3)
  • 2015年12月 (4)
  • 2015年11月 (1)
  • 2015年10月 (6)
  • 2015年9月 (2)
  • 2015年8月 (3)
  • 2015年7月 (2)
  • 2015年6月 (2)
  • 2015年5月 (5)
  • 2015年4月 (5)
  • 2015年3月 (4)
  • 2015年2月 (4)
  • 2015年1月 (5)
  • 2014年12月 (4)
  • 2014年11月 (5)
  • 2014年10月 (8)
  • 2014年9月 (7)
  • 2014年8月 (7)
  • 2014年7月 (6)
  • 2014年6月 (5)
  • 2014年5月 (5)
  • 2014年4月 (6)
  • 2014年3月 (10)
  • 2014年2月 (15)
  • 2014年1月 (11)
 ©2019 furodrive All Rights Reserved.