Django 防止在文件存在时更改文件名
我想显示默认的头像,但当我试图将其保存在数据库文件中时,它会用新名称复制。 如果文件已经存在,如何防止更改文件名 我的代码: models.pyDjango 防止在文件存在时更改文件名,django,Django,我想显示默认的头像,但当我试图将其保存在数据库文件中时,它会用新名称复制。 如果文件已经存在,如何防止更改文件名 我的代码: models.py class UserAccount(User): contacts = models.OneToOneField('self', null = True) isBanned = models.BooleanField(_('ban status'), default = False, help_text = _("Dis
class UserAccount(User):
contacts = models.OneToOneField('self', null = True)
isBanned = models.BooleanField(_('ban status'), default = False,
help_text = _("Display is contact banned by user."))
avatar = FileField(upload_to = 'avatars')
objects = UserManager()
views.py
user = UserAccount.objects.get(username = user_login)
user.first_name = request.POST['first_name']
user.last_name = request.POST['last_name']
user.email = request.POST['email']
try:
file = request.FILES['avatar']
fileName = request.FILES['avatar'].name
except:
fileName = 'static/avatars/default.gif'
file = File(open(fileName, 'r'))
user.avatar.save(fileName, file)
user.save()
解决方案在于,我没有保存化身,只是将文件字段路径分配给默认化身
try:
file = request.FILES['avatar']
fileName = request.FILES['avatar'].name
except:
user.avatar = 'avatars/default.gif'
flag = False
if flag:
user.avatar.save(fileName, file)
user.save()
已解决:user.avatar='avatars/default.gif'如果您已解决问题,请发布解决方案并接受它。StackOverflow鼓励提问者解决自己的问题。