Django models의 필드 유형

12527 단어
1、models.AutoField - 자동 증열 = int(11) 없으면 기본적으로 id라는 열이 생성됩니다. 사용자 정의 자동 증열을 표시하려면 기본 키primary 로 설정해야 합니다.key=True.2、models.CharField - 텍스트를 많이 저장하려면 TextField를 사용하는 짧은 문자열을 위한 문자열 필드 단일행 입력반드시 maxlength 매개 변수,django는 이 매개 변수에 따라 데이터베이스 층과 검사 층에서 이 필드에 허용되는 최대 문자 수를 제한합니다.
3、models.BooleanField - 부울 유형 = tinyint(1)는 비워둘 수 없고 Blank=True
4、models.ComaSeparated Integer Field - 쉼표로 분할된 숫자 = varchar는CharField를 계승하기 때문에 반드시 maxlenght 매개 변수,
5、models.DateField - 날짜 유형 date 매개 변수의 경우 autonow = True는 업데이트할 때마다 이 시간을 업데이트합니다.auto_now_dd는 처음 만들고 추가했을 뿐, 이후의 업데이트는 바뀌지 않습니다.6、models.DateTimeField ---날짜 형식datetime는 DateField의 매개 변수 7,models와 같습니다.Decimal - 십진수 소수점 유형 = decimal은 정수 비트 max 를 지정해야 합니다.digits와 소수위decimalplaces8、models.EmailField - 문자열 유형 (정규 표현식 메일박스) = varchar는 문자열을 정규 표현식으로 표시합니다.9、models.FloatField - 부동 소수점 유형 = 더블 부동 소수점 필드.매개변수 설명과 함께 두 개의 매개변수를 제공해야 합니다.
  max_digits: 총 자릿수(소수점 및 기호 제외)
  decimal_places: 소수점 자릿수.예를 들어 최대 999 (소수점 뒤에 두 자리 저장) 를 저장하려면, 필드를 다음과 같이 정의해야 합니다:models.FloatField(...,max digits=5,decimal places=2), 최대치 백만(소수점 뒤에 10자리 저장)을 저장하려면 이렇게 정의해야 한다:models.FloatField(…,max_digits=19, decimal_places=10)
10、models.IntegerField - 성형은 정수 11, models를 저장하는 데 사용됩니다.BigIntegerField - 긴 성형 integerfield_ranges = {    'SmallIntegerField': (-32768, 32767),    'IntegerField': (-2147483648, 2147483647),    'BigIntegerField': (-9223372036854775808, 9223372036854775807),    'PositiveSmallIntegerField': (0, 32767),    'PositiveIntegerField': (0, 2147483647),  }12、models.IPAddressField - 문자열 유형(ip4 정규 표현식) 문자열 형식의 IP 주소(예를 들어'202.1241.30〃). 13, 모델스.GenericIPAddressField - 문자열 유형(ip4와 ip6은 선택할 수 있음)매개 변수protocol은 both, ipv4, ipv6 검증 시 설정에 따라 14, 모델을 잘못 보고할 수 있습니다.NullBooleanField - 빈 부울 유형은 BooleanField와 유사하지만 NULL을 옵션으로 사용할 수 있습니다.BooleanField에 null=True 옵션을 추가하지 않고 이 필드를 사용하는 것을 추천합니다.admin은 이 필드 데이터를 선택 상자 (선택할 수 있는 세 가지 값: Unknown, Yes, No) 로 표시합니다.15、models.Positive Integer Field - 양의 Integer는 Integer Field와 유사하지만 값 범위는 비 마이너스 정수(이 필드는 0 값을 허용해야 하는데... 무기호 정수로 이해할 수 있음) 16, 모델스.Positive Small Integer Field - 정small Integer 정소형 필드, Positive Integer Field와 유사하고 수치 범위가 비교적 작다(데이터베이스 관련)SlugField "Slug"는 신문 용어이다.slug는 어떤 물건의 작은 표지 (짧은 서명) 로 자모, 숫자, 밑줄, 연결 문자만 포함한다.일반적으로 URL에 사용됩니다.Django 개발 버전을 사용하면 maxlength를 지정할 수 있습니다.maxlength가 지정되지 않으면 Django는 기본 길이: 50을 사용합니다. 추가 인자를 수락합니다.
  prepopulate_from: slug에서 온 자동 미리 설정 목록
17、models.SlugField - 빼기, 밑줄, 문자, 숫자는 URL에 일반적으로 사용됩니다.18、models.SmallIntegerField - 디지털 데이터베이스에 있는 필드는tinyint,smallint,int,bigint이다.IntegerField와 비슷하지만 범위의 정수만 허용됩니다.(데이터베이스에 의존)19,models.TextField - 문자열 = longtext, 용량이 큰 텍스트 필드입니다. 관리자 인터페이스는 여러 줄 편집 상자로 이 필드의 데이터를 표시합니다.
20、models.TimeField - 시간 HH:MM[:ss[.uuuuuu]] 시간 필드는 DateField와 DateTimeField와 유사합니다.21、models.URLField - URL 저장을 위한 주소 정규 표현식 문자열.만약verifyexists 매개 변수는 True (기본값) 이며, 주어진 URL은 존재하는지 미리 검사합니다. (즉 URL이 유효하게 불러오는지, 404 응답을 되돌려 주지 않았는지). 22, 모델스.Binary Field --- 2진 23, 모델스.ImageField - 그림은 FileField와 유사하지만 업로드 대상이 합법적인 그림인지 확인하십시오.그것은 두 개의 선택할 수 있는 매개 변수가 있습니다: Heightfield 및 widthfield, 이 두 파라미터를 제공하면 그림은 제공된 높이와 너비 규격에 따라 저장됩니다.이 필드에는 Python Imaging 라이브러리가 필요합니다.24、models.FilePathField - 지정된 디렉토리를 선택하여 제한 규칙에 따라 파일을 선택합니다. 세 가지 매개변수를 선택할 수 있습니다. 여기서 "path"에 필요한 세 가지 매개변수를 동시에 사용할 수 있습니다. 매개변수 설명:
path: 필수 매개 변수, 디렉터리의 절대 파일 시스템 경로입니다.FilePathField 에 선택적 항목이 제공됩니다.Example: “/home/images”;
match: FilePathField 는 선택적 인자, 정규 표현식, 문자열로 파일 이름을 필터합니다.이 정규 표현식은 경로 전체 이름이 아닌base filename에만 적용됩니다.Example: "foo.*\.txt^", 파일foo23과 일치합니다.txt는 bar와 일치하지 않습니다.txt 또는foo23.gif;recursive: path 아래에 있는 모든 하위 디렉토리, True 또는 False를 포함할 수 있는 선택적 매개 변수입니다. 기본값은 False입니다.
 
match는 경로 전체 이름 대신 base filename에만 적용됩니다.예를 들어 FilePathField (path="/home/images", match="foo.*",recursive=True).../home/images/foo.와 일치합니다.gif가 일치하지 않음/home/images/foo/bar.gif
 
25、models.FileField - 파일 업로드 필드.필수 매개 변수 요구: uploadto, 업로드된 파일을 저장하는 로컬 파일 시스템 경로입니다.이 경로에는 strftime formatting이 포함되어 있어야 합니다. 이 형식은 업로드된 파일의 date/time 대체 (so that uploaded files don't fill up the given directory) 를 포함합니다.모델에서 FileField 또는 ImageField를 사용하려면 다음과 같은 절차가 필요합니다. settings 파일에서 MEDIA 에 전체 경로를 정의하십시오.ROOT를 사용하면 Django가 업로드 파일을 여기에 저장할 수 있습니다.(성능 때문에 이 파일들은 데이터베이스에 저장되지 않습니다.)MEDIA 정의URL은 이 디렉토리의 공통 URL입니다.이 디렉터리가 WEB 서버 사용자 계정에 대해 쓸 수 있는지 확인하십시오.모델에 FileField 또는 ImageField를 추가하고 upload 를 정의했는지 확인하십시오to 옵션은 Django에게 MEDIA 를 사용하도록 알려줍니다.업로드 파일을 저장할 ROOT의 하위 디렉토리데이터베이스에 저장할 파일은 MEDIA ROOT에 비해 파일 경로뿐입니다.습관상 Django가 제공하는 get 를 사용하고 싶을 거예요.url 함수.예를 들면, 당신의 ImageField를 mug 이라고 부른다면shot, 템플릿에서 {{{object.get mug shot url}}} 이런 식으로 그림의 절대 경로를 얻을 수 있습니다.
 
26、models.PhoneNumberField - 합법적인 미국 스타일의 전화번호 검사를 가진CharField (형식: XX-XX-XXX)
27、models.USStateField - 미국 주 이름의 줄임말로 두 자모로 구성되어 있다.
28、models.XMLField ---XML 문자 필드, 값이 올바른 XML의 TextField인지 확인하려면 매개변수를 제공해야 합니다.
  schema_path: 텍스트의 RelaxNG schema에 대한 파일 시스템 경로를 검증합니다.
 
 
Field 옵션의 매개변수 의미:
1.null :     false.             ,      CharField,TextField .                 。
2.blank:         。    ,     
3.choices:        2   。           ,           。 SEX_CHOICES= ((‘F’,'Female’),(‘M’,'Male’),)
4.core:db_column,db_index              
5.default6.editable:    ,admin        。    
7.help_text:admin       
8.primary_key:    ,      django         :
9.radio_admin:  admin    select   radio  。   ForeignKey     choices
10.unique:     unique=True. Only one 
11.unique_for_date:    ,          title pub_date            
12.title = meta.CharField(maxlength=30,unique_for_date=’pub_date’)
13.unique_for_month / unique_for_year:    
14.validator_list:     。      django.core.validators.ValidationError   

 
meta 상세 정보:
1.abstract

                    。               。                 ,                。

Options.abstract
  abstract = True   model       

2.app_label

             ,                  models.py   ,                    。

Options.app_label
    model      models.py,      app models myapp.models    ,     app_label Django        app
app_label = 'myapp'

3.db_table

db_table            。Django                          。
Options.db_table
   model         
  db_table = 'Students'
            ,         
  table_name = 'my_owner_table'

4.db_teblespace

Options.db_teblespace
    model          。      settin            

5.get_latest_by

Options.get_latest_by
 model     DateField  DateTimeField。         model Manager  lastest   ,           

6.managed

Options.managed
    True,    Django    syncdb reset              。    True,         ,   manage     False

7.order_with_respect_to

               ,         ,                     。             get_xxx_order() set_xxx_order()   ,                  

8.ordering

       Django                      。             ,                         '-''-' ,         。  '?'      

ordering=['order_date'] #        
ordering=['-order_date'] #        ,-    
ordering=['?order_date'] #     ,?    
ordering=['-pub_date','author'] #  pub_date   ,  author    
9.permissions

permissions      Django Admin        ,                           。Django        admin       ,        。
permissions = (('can_deliver_pizzas','Can deliver pizzas'))

10.proxy

             ,  proxy = True,  model       model 

11.unique_together

unique_together      :                  。       ,  Person FirstName LastName           ,        :
unique_together = (("first_name", "last_name"),)
  ManyToManyField     unique_together 。          ManyToManyField       ,    signal(  )      through  。

12.verbose_name

verbose_name      ,                        ,  :
verbose_name = "  "

13.verbose_name_plural

       ,          ,  :
verbose_name_plural = "  "
     Django            ’s’

 
전재 대상:https://www.cnblogs.com/jingzaixin/p/8670094.html

좋은 웹페이지 즐겨찾기