我正在使用Django Admin网站管理我的上传。我想知道是否可以将原始文件名设置为Image类的默认标题。
$_ | Rename-Item -NewName ( $_.Name + ".pdf" )
我要上传图片,并且将标题字段保留为空白,而不是提供标题。然后,将Multimedia.titulo设置为原始上传文件名。我听说过预填充的字段,但不知道是否可能。预先感谢。
答案 0 :(得分:0)
我在做类似的事情,我发现,如here所述,当您上传文件时,该文件存储在字典 request.FILE 中,该文件返回< strong> UploadedFile 对象。您可以通过访问文件的名称属性(request.FILE['YourModelImageField'].name
)来获取文件的名称。
您可能会遇到这样的事情:
#model.py
class YourModel(models.Model):
name = models.CharField(max_length=20)
image = models.ImageField() # In this case we will have request.FILE['image'].name
#forms.py
class YourModelForm(ModelForm):
class Meta:
model = YourModel
fields = ['image']
#views.py
def add_model(request):
form = YourModelForm(request.POST, request.FILES)
uploaded_file=request.FILES
if form.is_valid():
model_instance = form.save(commit=False)
model_instance.name=uploaded_file['image'].name
model_instance.save()
return render(request, context={'form': form})
我并不是真正的django专家,所以如果有人看到错误或更好的解决方法,请告诉我。但这对我有用,我希望它能对您有所帮助。