小编Man*_*lia的帖子

验证器 = [MinValueValidator] 在 Django 中不起作用

我想在 Django 中为 FloatField 设置最小值,以便表单字段不接受负值。在整数的情况下,我将数据类型更改为 PositiveIntegerField 但最小值在浮点字段的情况下不起作用。

from django.core.validators import MaxValueValidator, MinValueValidator

max_discount = models.FloatField( verbose_name=u'Maximum Discount', validators = [MinValueValidator(0.0)])
Run Code Online (Sandbox Code Playgroud)

python django

15
推荐指数
2
解决办法
1万
查看次数

'list'对象没有'startswith'属性

我想上传个人资料图片.图像未上传.它在/ profile /中给出错误AttributeError

'list'对象没有'startswith'属性

def userDetail(request):
current_user = request.user
if(request.method == 'POST'):
    form = UserDetailDataForm(request.POST, request.FILES)
    if(form.is_valid()):
        profileImg = request.FILES['profileImg']
        try:
            userprofile = UserDetail.objects.get(user_id = current_user.id)
            if userprofile:
                userprofile.profileImg = profileImg
                userprofile.save()

        context = {'username': current_user.username, 'image' : userprofile.profileImg,                                                'MEDIA_ROOT': settings.MEDIA_ROOT}
        return render_to_response('user_profile.html', context)
else:
    form = UserDetailDataForm()
return render_to_response('profile.html', {'form': form})
Run Code Online (Sandbox Code Playgroud)

Models.py

profileImg = models.ImageField(upload_to='/images/',blank=True, null=True,default="images/default-profile.jpg")

设置文件:

BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
MEDIA_ROOT = [
os.path.join(BASE_DIR, 'firstapp/static/'),]
Run Code Online (Sandbox Code Playgroud)

完整StackTrace:

    Environment:


Request Method: POST
Request URL: http://localhost:8000/profile/

Django Version: 1.10.5
Python Version: 2.7.12 …
Run Code Online (Sandbox Code Playgroud)

python django image-upload

2
推荐指数
1
解决办法
6330
查看次数

标签 统计

django ×2

python ×2

image-upload ×1