ドキュメントを読んだので、少し混乱しました。私はそのようなモデルを持っています
class Image(models.Model):
name = models.CharField(max_length=80)
file = models.ImageField(upload_to = 'project_images')
description = models.CharField(max_length=30)
def __unicode__(self):
return self.name
ファイルのアップロードの処理は、管理インターフェイスを介して行われますが、これは機能しますが、アップロードがコミットされたときに存在する他のフィールドに基づいて、データに対してさらにいくつかのことを行う必要があります。
基本的に、現在のディレクトリはproject_images
私がやりたいことです。保存するときは、画像を ---> に配置する必要がありますproject_images/<year>/<month>
。保存するファイル パスは、データベースに保存するときにこれを反映する必要があり、ファイル名も名前フィールドに保存する必要があります。
これを行う背後にあるロジックを理解しています。
- チェックポスト
- 有効なチェック(ImageFieldはこれをすでに処理していると思います)
- ファイル名を取得
- 年月を取得する(数値)
- ディレクトリが存在するかどうかを確認する
- ディレクトリが存在しない場合は作成し、使用する場合は作成します
- 名前をファイル名に設定します
- アップロードしてすべて保存
これはどこに指定すればよいのでしょうか?保存メソッドの下のモデルでは?
これがドキュメントで指定されている場合は申し訳ありませんが、これは私を混乱させたドキュメントの1つの領域です.
ありがとう