CharField()类的参数 [英] Parameters for class CharField()

查看:19
本文介绍了CharField()类的参数的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

CharField('name',max_length = 100) CharField(max_length = 100)有什么区别?
参数名称" 的用途是什么?
什么是 CharField()构造函数?

What is the difference between CharField('name',max_length=100) and CharField(max_length=100)?
What is the parameter 'name' used for?
What are the CharField() constructors?

有人可以给我链接吗?

推荐答案

CharField继承自名为Field的类,该类具有构造函数

CharField inherits from class called Field which has constructor

class Field(RegisterLookupMixin):
    """Base class for all field types"""
    # <some more code>

    def __init__(self, verbose_name=None, name=None, primary_key=False,
            max_length=None, unique=False, blank=False, null=False,
            db_index=False, rel=None, default=NOT_PROVIDED, editable=True,
            serialize=True, unique_for_date=None, unique_for_month=None,
            unique_for_year=None, choices=None, help_text='', db_column=None,
            db_tablespace=None, auto_created=False, validators=[],
            error_messages=None):

Char字段构造器

class CharField(Field):
    description = _("String (up to %(max_length)s)")

    def __init__(self, *args, **kwargs):
        super(CharField, self).__init__(*args, **kwargs)
        self.validators.append(validators.MaxLengthValidator(self.max_length))

charfield构造函数基本上将参数(关键字和普通)传递给字段构造函数,并添加一个maxlength验证器.

The charfield constructor basically passes arguments (keyword and ordinary) to field constructor and adds a maxlength validator.

因此CharField('name',max_length = 100的参数'name'被分配给verbose_name

So the argument 'name' in CharField('name',max_length=100 gets assigned to verbose_name

查看此

https://github.com/django/django/blob/master/django/db/models/fields/__ init__.py

这篇关于CharField()类的参数的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆