Esempio n. 1
0
    class Meta:
        model = GallerySubCat
        exclude = ()

        widgets = {
            'title':
            forms.TextInput(attrs={
                'class': 'form-control',
                'placeholder': 'Enter title'
            }),
            'gallery_topic':
            widgets.Select(attrs={
                'class': 'form-control',
            }),
            'sub_category_images':
            forms.FileInput(attrs={'class': 'form-control'})
        }
Esempio n. 2
0
class upClientForm(forms.Form):
    name = forms.CharField(label='客户端名称',
                           initial='Android SDK',
                           max_length=50,
                           error_messages={'required': '名称不能为空'},
                           widget=widgets.TextInput(attrs={'class': 'form-control', 'placeholder': 'Android SDK'}))
    
    description = forms.CharField(label='描述信息',
                                  max_length=100,
                                  error_messages={'required': 'aaaaaa', },
                                  widget=widgets.TextInput(
                                      attrs={'class': 'form-control', 'placeholder': '修复 XXX BUG'}))
    
    mark = forms.CharField(label='企业标识',
                           initial='comm',
                           max_length=10,
                           widget=widgets.TextInput(attrs={'class': 'form-control', 'placeholder': 'comm'}))
    
    version = forms.CharField(label='版本号',
                              max_length=20,
                              validators=[version_validate, ],
                              widget=widgets.TextInput(attrs={'class': 'form-control', 'placeholder': '1.5.1'}))
    
    force_verison = forms.CharField(label='强制升级版本号',
                                    initial='1.2.1',
                                    max_length=20,
                                    validators=[version_validate, ],
                                    widget=widgets.TextInput(attrs={'class': 'form-control', 'placeholder': '1.0.1'}))
    
    device_type = forms.ChoiceField(label='客户端类型',
                                    choices=(('mobile-android', 'android sdk'),
                                             ('pc-win', 'windows'),
                                             ('pc-osx', 'max'),
                                             ('mobie-ios', 'ios sdk'),
                                             ('pc-linux-mips64-deepin', '国产深度'),
                                             ('pc-linux-arm64-neokylin', '中标麒麟'),
                                             ('pc-linux-arm64-zkfd', '中科方德'),
                                             ('mobile-yuanxin', '元心'),
                                             ('pc-linux-arm64-kylin', '银河麒麟'),
                                             ('pc-linux-x86_64-ubuntu', 'ubuntu'),
                                             ),
                                    widget=widgets.Select(attrs={'class': 'form-control', 'placeholder': '1.0.1'}))
    # package = fields.FileField(widget=forms.ClearableFileInput(attrs={'multiple': True})) # 多个文件
    files = forms.FileField(label='客户端文件',
                            validators=[app_validate, ],
                            )
Esempio n. 3
0
 class Meta:
     model = models.files
     fields = ['name', 'file_type', 'file']
     widgets = {
         'name':
         widgets.TextInput(attrs={
             'class': 'form-control',
             'placeholder': '文件名称'
         }),
         'file_type':
         widgets.Select(attrs={
             'class': 'form-control',
             'placeholder': '文件类型'
         }),
         'file':
         widgets.FileInput(),
     }
Esempio n. 4
0
 class Meta:
     model = models.Question  #帮Question里面所有字段都可以拿到
     fields = "__all__"  #拿到个人的字段  但如果是 "__all__" 就表示所有的字段
     error_messages = {"caption": {"required0": "名称不能为空"}}
     widgets = {
         "caption":
         widgets.Textarea(
             attrs={
                 "class": "form-control",
                 "style": "resize:none; width:500px; height:40px;"
             }),
         "tp":
         widgets.Select(attrs={
             "class": "form-control",
             "id": "select_change"
         })
     }
Esempio n. 5
0
    class Meta:
        model = TourPackages
        exclude = ()

        widgets = {
            'tour':
            widgets.Select(attrs={'class': 'form-control'}),
            'title':
            forms.TextInput(attrs={
                'class': 'form-control',
                'placeholder': 'Enter title'
            }),
            'package_images':
            forms.FileInput(attrs={'class': 'form-control'}),
            'description':
            forms.Textarea(attrs={'class': 'form-control'})
        }
Esempio n. 6
0
class myForm(forms.Form):
    user = forms.CharField(min_length=6)    #前端form的name必须和属性名一致
    email = forms.EmailField(error_messages={'requird':"空错误", 'invalid':"格式错误", 'min_length':"长度限制错误"}) #自定义错误信息, key值Django内部定义
    favor = forms.ChoiceField(choices=[(1, "value1"), (2, "value2")])    #下拉框
    sport = forms.MultipleChoiceField()     #多选框
    sex = fields.IntegerField(widget=widgets.Select(attrs={"class", "c"}))  #使用widgets复合类型和属性
    sex2 = modelforms.ModelChoiceField(queryset=models.Article.objects.all())   #和sex效果一样且自动更新

    def __init__(self, *args, **kwargs):
        super(myForm, self).__init__(*args, **kwargs)
        self.fields['sex'].widget.choices = models.Algbor.objects.all().values_list('id','caption')    #动态获取数据库数据, 否则只会在程序启动时获取一次

    def clean(self):    #钩子函数(raise异常)
        pass
    
    def _post_clean(self):  #钩子函数
        pass
Esempio n. 7
0
    class Meta:
        model = PackageImages
        exclude = ()

        widgets = {
            'package':
            widgets.Select(attrs={'class': 'form-control'}),
            'title':
            forms.TextInput(attrs={
                'class': 'form-control',
                'placeholder': 'Enter title',
            }),
            'package_images':
            forms.FileInput(attrs={
                'class': 'form-control',
            })
        }
Esempio n. 8
0
class AutoReviewRuleFilter(filters.FilterSet):

    status = filters.RelatedFilter(
        TestInstanceStatusFilter,
        field_name="status",
        queryset=models.TestInstanceStatus.objects.all(),
    )

    pass_fail = filters.Filter(
        field_name="pass_fail",
        widget=widgets.Select(choices=[('', 'Any')] +
                              list(models.PASS_FAIL_CHOICES)),
    )

    class Meta:
        model = models.AutoReviewRule
        fields = ['status', 'pass_fail']
Esempio n. 9
0
class DynamicForm(forms.Form):
    # 因為屬性是靜態字段,所以在程序啟動時就會給一塊內存去加載,除非重啟,否則不會動態更改
    username = fields.IntegerField(
        # widget=widgets.Select(choices=[(0, 'jamie'), (1, 'joker'), (2, 'jj'), ])
        # widget=widgets.Select(choices=models.UserInfo.objects.values_list('id', 'username'))
        widget=widgets.Select(), )
    age = fields.IntegerField(
        initial=18,
        min_value=1,
    )

    def __init__(self, *args, **kwargs):
        # super一定要寫在上面,用來拷貝所有的靜態字段複製給self.fields
        super(DynamicForm, self).__init__(*args, **kwargs)
        # 每次調用obj時就會執行一次init,所以在此更新choices,實現動態更新
        self.fields["username"].widget.choices = models.UserInfo.objects.all(
        ).values_list("id", "username")
 class Meta:
     model = User
     fields = [
         'username',
         'DPI',
         'Photo',
         'Name1',
         'Name2',
         'Name3',
         'LastName1',
         'LastName2',
         'BirthDate',
         'Email',
         'Phone',
         'FKLicenceType',
     ]
     labels = {
         'username': '******',
         'DPI': 'DPI',
         'Photo': 'Photo',
         'Name1': 'Name1',
         'Name2': 'Name2',
         'Name3': 'Name3',
         'LastName1': 'LastName',
         'LastName2': 'LastName2',
         'BirthDate': 'BirthDate',
         'Email': 'Email',
         'Phone': 'Phone',
         'FKLicenceType': 'FKLicenceType',
     }
     years = [x for x in range(1980, 2019)]
     widgets = {
         'username': widgets.TextInput(attrs={'class': ''}),
         'DPI': widgets.TextInput(),
         'Photo': widgets.FileInput(),
         'Name1': widgets.TextInput(attrs={'class': ''}),
         'Name2': widgets.TextInput(attrs={'class': ''}),
         'Name3': widgets.TextInput(attrs={'class': ''}),
         'LastName1': widgets.TextInput(attrs={'class': ''}),
         'LastName2': widgets.TextInput(attrs={'class': ''}),
         'Email': widgets.TextInput(attrs={'class': ''}),
         'Phone': widgets.TextInput(attrs={'class': ''}),
         'BirthDate': widgets.SelectDateWidget(attrs={'class': ''},
                                               years=years),
         'FKLicenceType ': widgets.Select(attrs={'class': ''}),
     }
Esempio n. 11
0
 class Meta:
     model = models.SiteInvite
     exclude = ["code", "user", "times_used", "invitees"]
     widgets = {
         "expiry": ExpiryWidget(
             choices=[
                 ("day", _("One Day")),
                 ("week", _("One Week")),
                 ("month", _("One Month")),
                 ("forever", _("Does Not Expire")),
             ]
         ),
         "use_limit": widgets.Select(
             choices=[(i, _(f"{i} uses")) for i in [1, 5, 10, 25, 50, 100]]
             + [(None, _("Unlimited"))]
         ),
     }
Esempio n. 12
0
    class Meta:
        model = Tours
        exclude = ()

        widgets = {
            'title':
            forms.TextInput(attrs={
                'class': 'form-control',
                'placeholder': 'Enter title'
            }),
            'tour_topic':
            widgets.Select(attrs={
                'class': 'form-control',
            }),
            'tour_images':
            forms.FileInput(attrs={'class': 'form-control'})
        }
Esempio n. 13
0
    class Meta:
        model = Properties
        exclude = ['id']

        widgets = {
            'streetName': widgets.TextInput(attrs={ 'class': 'form-control'}),
            'price': widgets.NumberInput(attrs={ 'class': 'form-control'}),
            'propValue': widgets.NumberInput(attrs={ 'class': 'form-control'}),
            'fireInsurance': widgets.NumberInput(attrs={ 'class': 'form-control'}),
            'squareMeter': widgets.NumberInput(attrs={ 'class': 'form-control'}),
            'rooms': widgets.NumberInput(attrs={ 'class': 'form-control'}),
            'type': widgets.TextInput(attrs={ 'class': 'form-control'}),
            'description': widgets.Textarea(attrs={ 'class': 'form-control'}),
            'shortDescription': widgets.Textarea(attrs={ 'class': 'form-control'}),
            'realtor': widgets.Select(attrs={ 'class': 'form-control'}),
        }
        labels = {
            'streetName': _('Götuheiti'),
            'price': _('Verð'),
            'propValue': _('Fasteignamat'),
            'fireInsurance': _('Brunabótamat'),
            'squareMeter': _('Fermetrar'),
            'rooms': _('Herbergi'),
            'type': _('Tegund'),
            'description': _('Lýsing'),
            'shortDescription': _('Stutt lýsing'),
            'realtor': _('Fasteignasali'),

        }

        fields = [
            'streetName',
            'price',
            'propValue',
            'fireInsurance',
            'squareMeter',
            'rooms',
            'type',
            'zone',
            'zip',
            'description',
            'shortDescription',
            'realtor',
            'image'
        ]
Esempio n. 14
0
 class Meta:
     model = Buyer
     exclude = ['id', 'credit_card']
     widgets = {
         'buyer_name':
         widgets.TextInput(attrs={
             'class': 'form-control',
             'placeholder': 'Type in your full name.'
         }),
         'address':
         widgets.TextInput(
             attrs={
                 'class': 'form-control',
                 'placeholder': 'Type in your current streetname.'
             }),
         'city':
         widgets.TextInput(
             attrs={
                 'class': 'form-control',
                 'placeholder': 'Type in your current city.'
             }),
         'country':
         widgets.Select(
             attrs={
                 'class': 'form-control',
                 'placeholder': 'Type in your current country of living.'
             }),
         'postal_code':
         widgets.TextInput(
             attrs={
                 'class': 'form-control',
                 'placeholder': 'Type in your current postal code.'
             }),
         'ssc':
         widgets.TextInput(
             attrs={
                 'class': 'form-control',
                 'placeholder': 'Type in your social security number.'
             }),
         'email':
         widgets.TextInput(attrs={
             'class': 'form-control',
             'placeholder': 'Type in your email.'
         }),
     }
Esempio n. 15
0
class LoginForm(forms.Form):
    COLORS = [['红', '红'], ['蓝', '蓝'], ['紫', '紫']]
    username = forms.CharField(label='用户名',
                               min_length=2,
                               max_length=20,
                               error_messages={
                                   'min_length': '用户名最少可以设置2位',
                                   'max_length': '用户名最长可以设置20位'
                               },
                               widget=widgets.TextInput(attrs={
                                   'class': 'form-control',
                                   'placeholder': '用户名'
                               }))

    user_color = forms.ChoiceField(
        label='幸运颜色',
        choices=COLORS,
        widget=widgets.Select(attrs={'class': 'form-control'}))
Esempio n. 16
0
class NewsForm(forms.ModelForm):
    title = fields.CharField(widget=widgets.TextInput(attrs={
        "class": "form-control",
        "placeholder": "在此输入标题"
    }))
    choices = (
        (1, 'Everyone'),
        (2, 'Teachers'),
        (3, 'Students'),
    )
    watchers = fields.CharField(
        widget=widgets.Select(choices=choices),
        label="可见对象",
    )

    class Meta:
        model = News
        fields = ["title", "content", "watchers"]
Esempio n. 17
0
 class Meta:
     model = models.Question
     fields = "__all__"
     error_messages = {
         "caption": {
             "required": "名称不能为空"
         },
     }
     widgets = {
         "caption":
         wid.Textarea(attrs={
             "class": "form-control",
             "rows": "2",
             "cols": "60"
         }),
         "ct":
         wid.Select(attrs={"class": "form-control"})
     }
Esempio n. 18
0
 class Meta:
     model = models.Book
     fields = "__all__"
     # fields = ['name','sex','age','phone']
     # exclude = ['username',]
     # error_messages = {
     #     "username": {'required':'用户名不能为空'}
     # }
     widgets = {
         "title":wid.TextInput(attrs={'class': "form-control" ,'placeholder': '书名'}),
         'price':wid.NumberInput(attrs={'class': "form-control" ,'placeholder': '价格'}),
         'date':wid.DateInput(attrs={'class': "form-control" ,'placeholder': '出版日期'}),
         'publish':wid.Select(attrs={'class': "form-control" ,'placeholder': '出版社'}),
         'authors':wid.SelectMultiple(attrs={'class': "form-control" ,'placeholder': '作者'}),
     }
     labels = {
         'authors':'作者'
     }
Esempio n. 19
0
class SimpleWrapperPlugin(BootstrapPluginBase):
    name = _("Simple Wrapper")
    parent_classes = ('BootstrapColumnPlugin',)
    alien_child_classes = True
    TAG_CHOICES = tuple((cls, cls.title()) for cls in ('div', 'span', 'section', 'article',))
    glossary_fields = (
        PartialFormField('element_tag',
            widgets.Select(choices=TAG_CHOICES),
            label=_("HTML element tag"),
            help_text=_('Choose a tag type for this HTML element.')
        ),
    )

    @classmethod
    def get_identifier(cls, obj):
        identifier = super(SimpleWrapperPlugin, cls).get_identifier(obj)
        tag = obj.glossary.get('element_tag', cls.TAG_CHOICES[0][1])
        return format_html('{0}{1}', identifier, tag.title())
Esempio n. 20
0
 class Meta:
     model = CheckoutInfo
     exclude = ['id']
     widgets = {
         'user': widgets.HiddenInput(attrs={'class': 'form-control'}, ),
         'feeling_lucky':
         widgets.HiddenInput(attrs={'class': 'form-control'}, ),
         'name': widgets.TextInput(attrs={'class': 'form-control'}, ),
         'mobile': widgets.TextInput(attrs={'class': 'form-control'}, ),
         'street_name': widgets.TextInput(attrs={'class':
                                                 'form-control'}, ),
         'house_number': widgets.TextInput(attrs={'class':
                                                  'form-control'}, ),
         'country': widgets.Select(attrs={'class': 'form-control'}, ),
         'city': widgets.TextInput(attrs={'class': 'form-control'}, ),
         'zipCode': widgets.TextInput(attrs={'class': 'form-control'}, ),
         'social': widgets.TextInput(attrs={'class': 'form-control'}, )
     }
Esempio n. 21
0
class QuestionForm(Form):
    title = fields.CharField(
        error_messages={"required": "问题不能为空"},
        widget=wd.Textarea(attrs={"style": "width:600px;height:50px"}))
    type = fields.ChoiceField(
        choices=((1, "单选"), (2, "打分(0-10分)"), (3, "建议")),
        widget=wd.Select(attrs={
            "style": "width:200px;height:30px",
            "class": "type"
        }))

    option_ids = fields.ChoiceField(choices=[], widget=wd.RadioSelect())

    def __init__(self, *args, **kwargs):
        super().__init__(*args, **kwargs)

        self.fields["option_ids"].choices = models.Option.objects.all(
        ).values_list("id", "title")
Esempio n. 22
0
class DepartmentForm(Form):
    Name = fields.CharField(required=True,
                            max_length=200,
                            error_messages={
                                'required': '姓名不能为空!!!',
                                'max_length': '名称过长!!!',
                            },
                            widget=widgets.TextInput(attrs={
                                'class': '',
                                'placeholder': 'Name',
                                'name': 'Name'
                            }))
    choice = Company.objects.values_list('id', 'Name')
    Company_id = fields.CharField(widget=widgets.Select(
        choices=choice, attrs={
            'class': '',
            'name': 'Company_id'
        }))
class MessageTemplateForm(forms.ModelForm):
    message_type = fields.CharField(widget=widgets.Select(choices=[]))

    class Meta:
        model = MessageTemplateModel
        fields = '__all__'

    def __init__(self, *args, **kwargs):
        super(MessageTemplateForm, self).__init__(*args, **kwargs)
        self.fields["message_type"].widget.choices = [('', '请选择')]
        try:
            dictionary = DataDictionaryModel.objects.get(
                code_main='message_type')
            self.fields[
                "message_type"].widget.choices += DataDictionaryValueModel.objects.filter(
                    dict_id=dictionary.id).values_list('value', 'title')
        except Exception:
            pass
Esempio n. 24
0
    class Meta:
        model = models.Question
        fields = ["title", 'type']

        error_messages = {"title": {"required": "名称不能为空"}}

        widgets = {
            "title":
            wd.Textarea(attrs={
                "class": "question_title",
                "style": "width:600px;height:40px"
            }),
            "type":
            wd.Select(attrs={
                "class": "type",
                "style": "width:300px;height:30px"
            })
        }
Esempio n. 25
0
class QuestionsForm(Form):
    def __index__(self, *args, **kwargs):
        super(QuestionsForm, self).__init__(*args, **kwargs)

        self.fields['tp'].initial = [1]

    title = fields.CharField(label='标题:',
                             max_length=64,
                             required=True,
                             error_messages={'required': '标题不能为空'},
                             widget=widgets.TextInput(attrs={
                                 'placeholder': '标题',
                                 'class': 'form-inline'
                             }))
    tp = fields.IntegerField(label='题目类型:',
                             widget=widgets.Select(
                                 attrs={'class': 'form-inline types'},
                                 choices=((1, '打分'), (2, '单选'), (3, '评价'))))
Esempio n. 26
0
 class Meta:
     model = Reviews
     exclude = ['id', 'user', 'product', 'datetime']
     CHOICES = (
         (1, '1 Star'),
         (2, '2 Stars'),
         (3, '3 Stars'),
         (4, '4 Stars'),
         (5, '5 Stars'),
     )
     widgets = {
         'rating':
         widgets.Select(attrs={'class': 'form-control'}, choices=CHOICES),
         'reviewTitle':
         widgets.TextInput(attrs={'class': 'form-control'}),
         'reviewText':
         widgets.TextInput(attrs={'class': 'form-control'}),
     }
Esempio n. 27
0
    def score_list(self, request, record_id):
        if request.method == "GET":
            from django.forms import Form, fields, widgets
            data = []
            study_record_list = models.StudyRecord.objects.filter(
                course_record_id=record_id)
            for obj in study_record_list:
                TempForm = type(
                    "TempForm", (Form, ), {
                        "score_%s" % obj.pk:
                        fields.ChoiceField(
                            choices=models.StudyRecord.score_choices,
                            widget=widgets.Select(attrs={
                                "class": "form-control",
                            })),
                        "homework_note_%s" % obj.pk:
                        fields.ChoiceField(widget=widgets.TextInput(
                            attrs={"class": "form-control"}))
                    })
                data.append({
                    'obj':
                    obj,
                    'form':
                    TempForm(
                        initial={
                            'score_%s' % obj.pk: obj.score,
                            'homework_note_%s' % obj.pk: obj.homework_note
                        })
                })
            return render(request, "score_list.html", {"data": data})
        else:
            data_dict = {}
            for key, value in request.POST.items():
                if key == "csrfmiddlewaretoken":
                    continue
                name, nid = key.rsplit("_", 1)
                if nid in data_dict:
                    data_dict[nid][name] = value
                else:
                    data_dict[nid] = {name: value}

            for nid, update_dict in data_dict.items():
                models.StudyRecord.objects.filter(id=nid).update(**update_dict)
            return redirect(request.path_info)
Esempio n. 28
0
class FormStockes(dform.ModelForm):  # 股权
    stock_owner = fields.IntegerField(
        label='所有权人',
        label_suffix=":",
        widget=widgets.Select(attrs={'class': 'form-control'}))

    class Meta:
        model = models.Stockes
        fields = ['target', 'ratio', 'registe', 'share', 'stock_typ', 'remark']
        widgets = {
            'target':
            dform.TextInput(attrs={
                'class': 'form-control',
                'placeholder': '目标企业'
            }),
            'ratio':
            dform.NumberInput(attrs={
                'class': 'form-control',
                'placeholder': '占比'
            }),
            'registe':
            dform.NumberInput(attrs={
                'class': 'form-control',
                'placeholder': '万元或万股'
            }),
            'share':
            dform.NumberInput(attrs={
                'class': 'form-control',
                'placeholder': '万元或万股'
            }),
            'stock_typ':
            dform.Select(attrs={'class': 'form-control'}),
            'remark':
            dform.TextInput(attrs={
                'class': 'form-control',
                'placeholder': '备注'
            }),
        }

    def __init__(self, *args, **kwargs):
        super(FormStockes, self).__init__(*args, **kwargs)
        self.fields[
            'stock_owner'].widget.choices = models.Customes.objects.values_list(
                'id', 'name').order_by('name')
Esempio n. 29
0
class PersonnelForm(forms.Form):
    user_name = fields.CharField(
        max_length=16,
        required=True,
        strip=True,
        validators=[
            RegexValidator(r'^[a-zA-Z\u4e00-\u9fa5]+$', '用户名不能有特殊字符或数字'),
        ],
        widget=widgets.TextInput(attrs={"placeholder": "用户名"}))
    email = fields.CharField(
        max_length=32,
        required=True,
        strip=True,
        validators=[
            RegexValidator(r'^\d{5,12}@[Qq][Qq]\.(com|cn)$', '只能是QQ邮箱'),
        ],
        widget=widgets.TextInput(attrs={"placeholder": "邮箱"}))
    blog_title = fields.CharField(
        max_length=16,
        required=True,
        strip=True,
        widget=widgets.TextInput(attrs={"placeholder": "博客标题"}))
    blog_surfix = fields.CharField(
        max_length=32,
        required=True,
        strip=True,
        validators=[
            RegexValidator(r'^[a-zA-Z]+$', '博客地址只能由英文组成'),
        ],
        widget=widgets.TextInput(attrs={"placeholder": "博客地址"}))
    theme = fields.CharField(widget=widgets.Select())
    sammary = fields.CharField(max_length=64,
                               required=False,
                               strip=True,
                               widget=widgets.Textarea(attrs={
                                   'cols': "110",
                                   'rows': "6"
                               }))

    # 动态获取数据库字段
    def __init__(self, *args, **kwargs):
        super(PersonnelForm, self).__init__(*args, **kwargs)
        self.fields['theme'].widget.choices = models.Blog.objects.values_list(
            'theme', 'theme')
Esempio n. 30
0
class MenuForm(Form):
    caption = fields.CharField(
        required=True,
        error_messages={'required': '目录名不能为空'},
        widget=widgets.TextInput(attrs={'class': 'form-control'}))

    url = fields.CharField(
        required=False,
        widget=widgets.TextInput(attrs={'class': 'form-control'}))

    parent_id = fields.ChoiceField(required=False,
                                   choices=[],
                                   widget=widgets.Select(
                                       attrs={'class': 'form-control'}, ))

    def __init__(self, *args, **kwargs):
        super(MenuForm, self).__init__(*args, **kwargs)
        self.fields['parent_id'].choices = models.Menu.objects.values_list(
            'id', 'caption')