我想在保存之前更改表單的實例。我需要這樣的觀點中設置的某些信息:在保存之前更改表單實例Django
class UploadedFile(models.Model):
file = models.FileField(storage=s3store, upload_to=custom_upload_to)
slug = models.SlugField(max_length=50, blank=True)
bucket = models.ForeignKey(S3Bucket, blank=False)
uploaded_by = models.ForeignKey(User, related_name='uploaded_by', blank=False)
company = models.ForeignKey(Company, blank=False)
-
class UploadForm(ModelForm):
class Meta:
model = UploadedFile
-
form = UploadForm(request.POST, request.FILES)
form.instance.company_id = r_user.company.id
form.instance.uploaded_by_id = r_user.id
form.instance.bucket_id = r_user.company.s3_bucket_id
if form.is_valid():
form_object = form.save()
現在,我得到的形式是無效的,因爲公司/上傳/存儲桶爲空:
錯誤表格:
但我確實設置了它們!我是否需要讓它們變爲空= True,然後執行保存(commit = false),更改它們,然後重新保存?如果是,爲什麼會這樣?我確實改變了形式......