FileFieldを含むモデルがあります。
class DocumentUpload(models.Model):
document_name = models.CharField(max_length=100, blank=True)
document_path = models.FileField(upload_to='uploads')
そしてこのモデルを使用するフォーム
class DocumentUploadForm(forms.ModelForm):
class Meta:
model = DocumentUpload
フォームを使用して新しいアップロードを作成すると、すべて正常に機能します。
if request.method == 'POST':
form = DocumentUploadForm(request.POST, request.FILES)
if form.is_valid():
form.save()
ただし、エントリを更新/編集しようとすると、アップロードされたドキュメント以外のすべてのフィールドが更新されます。これは、元のアップロードと同じままです。
d = get_object_or_404(DocumentUpload, pk=id)
if request.method == 'POST':
form = DocumentUploadForm(data=request.POST, files=request.FILES, instance=d)
if form.is_valid():
u = form.save()
インスタンスを編集するときにアップロードファイルを変更するにはどうすればよいですか?
ありがとう