问题描述
在我的项目中,我希望允许用户上传个人资料图片。我正在使用 imagefield,但默认选项不起作用,因此出现错误。
**models.py**
class Profile_Pic(models.Model):
user = models.OnetoOneField(User,null=True,on_delete=models.CASCADE)
profile_pic = models.ImageField(null=True,blank=True,default='images/logo.png',upload_to='images')
@property
def default(self):
if self.profile_pic:
return self.profile_pic.url
else:
return 'logo.png'
class Meta:
db_table = 'Profile_Pic'
**views.py**
@login_required
def profile(request):
user = request.user.profile_pic
form = Photo(instance=user)
context = {'photo': form}
return render(request,'datas/profile.html',context)
**settings.py**
STATIC_URL = '/static/'
MEDIA_URL = '/media/'
MEDIA_ROOT = os.path.join(BASE_DIR,'admin_car/static/media')
STATICFILES_Dirs = [
os.path.join(BASE_DIR,'admin_car/static/images')
]
**profile.html**
<div style="text-align: left;position:absolute;top:50px;left:16px;float: left">
<img class="image" src='{{ user.profile_pic.profile_pic.url }}' style=" height: 200px; width: 200px" alt="logo.png">
<style>
img {
border-radius: 50%;
}
</style>
有什么方法可以在创建新用户时添加默认图片?任何帮助将不胜感激。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)