데이터베이스 필드-django

5366 단어
데이터베이스 유형: AutoField: 자동으로 증가하는 키 id, 일반적으로 지정하지 않습니다. 지정하지 않을 때 Django는 자동으로 속성 이름이 id인 자동 증가 속성을 생성합니다.
BooleanField: 부울 필드, 값은 True 또는 False입니다. #권한 관리 NullBooleanField: 부울 필드는 Null, True, False 세 가지 값을 지원합니다.(default=True 기본값 설정)
CharField: 문자열. #->MD5+ 소금값 생성 암호화 데이터 maxlength 매개 변수인 URLField: URL이 저장된 필드입니다.EmailField: Email 필드는 올바른 이메일 주소인지 확인합니다.SlugField: 문자, 숫자, 밑줄만 포함하는 문자열을 저장합니다.TextField: 일반적으로 4000자를 초과할 때 사용되는 큰 텍스트 필드입니다.(max length=문자 길이)CharField의 필수 매개변수 기타는 선택적 매개변수입니다.
IntegerField: 정수.DecimalField: 십진수 부동 소수점 수입니다.(max digits=총 자릿수, decimal places=소수점 자릿수) FloatField: 부동 소수점 수입니다.
DateField: 날짜.
#auto_now: 이 데이터를 업데이트할 때마다 이 필드는 자동으로 현재 시간으로 업데이트됩니다. 글이 발표되거나 수정됩니다.
#auto_now_dd: 이 데이터를 만들 때마다 이 필드는 자동으로 현재 시간, 사용자 등록 시간으로 저장됩니다
TimeField: 시간.DateTimeField: 날짜 시간.([auto now=False, auto now add=False]) 매개변수 autonow_add 및 autonow는 서로 배척합니다. 조합에 오류가 발생할 수 있습니다.
FileField: 파일 업로드 필드.ImageField: FileField에 상속되어 업로드된 내용을 검증하여 올바른 그림인지 확인합니다.
GenericIPAddressField: IPV4 또는 IPV6 주소의 문자열 두 개의 기본 매개 변수는 이 ip가 파충류라고 판단할 때protocol: IP 프로토콜, ipv4 또는 ipv6를 차단하고 기본both은 전체 unpackipv4: IP 주소 확인, 프로토콜이 both일 때만 사용 가능
데이터베이스 매개 변수:primarykey: 이 값이 True이면 모델의 키 필드가 되며 일반적으로 AutoField 옵션으로 사용됩니다.(기본값은 false)default: 기본값입니다.max_length: 최대 문자 개수 maxdigits: 총 자릿수를 나타냅니다decimalplaces: 소수점 자릿수verbosename: 현재 필드에 대한 자세한 이름(Admin에 표시된 필드 이름)
auto_now: 이 값이 True일 때 데이터 객체를 저장할 때마다 이 필드를 현재 시간으로 자동 설정하고 마지막 수정 시간(기본값false)을 자동으로 업데이트합니다 autonow_add: 이 값이 True일 때, 이 필드는 첫 번째 데이터 대상이 만들어졌을 때 현재 필드가 만들어진 시간 값을 기록할 수 있습니다. (기본값은false)
unique: 이 값이 True일 때, 이 필드는 테이블에 유일한 값이 있어야 합니다. 이 필드는 모델 층에서 저장된 데이터가 유일하는지 검증합니다.unique_for_date: 데이터베이스에서 필드 [날짜] 부분에 유일한 인덱스 유닛을 만들 수 있는지 여부for_month: 데이터베이스에서 필드 [월] 부분에 유일한 인덱스 unique 를 만들 수 있는지 여부for_year: 데이터베이스에서 필드 [년] 부분에 유일한 인덱스를 만들 수 있는지 여부 (기본값false)
null: 이 값이 True인 경우 허용되는 값이 비어 있음을 나타냅니다.(기본값은 false) blank: 이 값이 True일 경우 해당 양식 필드도 비워 둘 수 있습니다.(기본값false)(null은 데이터베이스 범주 개념이고 blank는 폼 검증 범주에 대응하는) (문자열 형식의 데이터 필드에 대해django는 빈 문자열을 사용하여 빈 값(")을 대표하기 때문에null값이 아니라null값을 사용하기 때문에null을 사용하지 마십시오)
db_column: 필드의 이름입니다. 지정하지 않으면 속성의 이름을 사용합니다.db_index: 필드의 인덱스. 값이 True이면 테이블에 이 필드의 인덱스를 만들 것입니다.(기본값은 false)
help_text:Admin에서 이 필드의 알림 정보 editable: 이 값이false일 때, 이 필드는 Admin에서 편집되지 않습니다. (기본값은 True) choices: 밑에 있는 메뉴는 클래스에서 두 개의 모듈 데이터를 사용자 정의할 수 있는 플러그인 목록이나 모듈입니다.또한 분류 쓰기 지원: 3층 중첩(2원조의 첫 번째 값은 데이터베이스에 저장되고 두 번째 값은 드롭다운 메뉴에 표시됨)(이 값이 설정되면 폼 스타일은 텍스트 상자가 아닌 드롭다운 선택 상자를 표시함)
데이터베이스의 메타 매개 변수 속성: abstract: abstract=True는 현재 모델 클래스가 추상적인 기본 클래스임을 나타내며 실제 데이터 테이블을 만들지 않습니다. 다만 다른 모델 클래스의 계승을 위해 (***********************회) ORM에 대응하는 클래스에는 또 다른class Meta: 클래스가 포함되고 메타 클래스는 일부 데이터베이스 정보를 봉인합니다.기본 필드는 다음과 같습니다.
db_table:ORM 데이터베이스에 있는 테이블 이름은 기본적으로 하위 응용 프로그램클래스 이름,db테이블 이름을 다시 쓰기 전에 (db table = "table name") index 를 사용해야 합니다.together: 연합 색인입니다.형식은 하나의 모듈 모듈로 유일한 기록을 표시하고 동기화 조회를 연합하여 효율을 높이는 데 사용된다.(index_together = ((‘name’,‘phone’),)) unique_together: 유일한 인덱스를 결합합니다.형식은 반복할 수 없는 필드 조합을 설정하는 모듈입니다.(예: 사용자 이름 비밀번호) (unique together = ('name', 'phone') ordering: 기본적으로 어떤 필드로 정렬되는지 지정합니다.목록이나 원조 형식으로 '-' 거꾸로 정렬하기, 사용하기 '를 사용할 수 있습니다.무작위 정렬(ordering=['-birthday','age')verbosename: 이 테이블의 전시에 사용할 이름을 설정합니다. 이름은 자동으로 복수로 처리됩니다.(verbose name='하하'표시시 s로 끝) verbosename_plural: verbose_name 기능과 같지만 문자열 뒤에 "s"를 자동으로 추가하지 않습니다. (verbose name plural = "하하"가 나타날 때 s 없음) applabel: 모델 클래스가 다른 하위 응용 프로그램에 정의되면 이 속성은 현재 테이블이 어떤 app 응용 프로그램에 속하는지 설명하는 데 사용됩니다(app label="MyApp")
데이터베이스 관계:
일대일 관계 모델스.Onto One Field () 는 어느 종류에나 정의할 수 있습니다. (매개 변수는 1.2.3) 2쌍의 다중 관계 모델입니다.ForignKey () # 키 제약조건은 여러 클래스에 정의됩니다. (매개 변수는 1.2.3.4.5) 3 다중 관계 모델입니다.ManyToManyField()는 모든 클래스를 정의할 수 있습니다(1.4.5.6.7.8.9) ManyToManyField 필드를 사용할 때 Django는 자동으로 테이블을 생성하여 여러 쌍의 관련 관계를 관리합니다.
데이터베이스 관계 매개 변수: 1.to: 연결할 테이블 설정
  • to_field: 연결할 테이블의 필드를 설정합니다.on_delete: 관련 테이블의 데이터를 삭제할 때 현재 테이블과 연결된 줄의 행동입니다.
  • related_name: 역방향 작업을 할 때 사용하는 필드 이름, 원래 역방향 검색을 대체할 때의 '테이블 이름set’. 5. related_query_name: 역방향 조회 작업을 할 때 사용하는 연결 접두사, 테이블 이름을 바꾸는 데 사용합니다.6.through: 세 번째 표를 수동으로 만들어서 다대다 관계를 관리하고through를 통해 세 번째 표의 이름을 지정합니다.7. db_테이블: 기본적으로 세 번째 테이블을 만들 때 데이터베이스에 있는 테이블의 이름입니다.8.symmetrical: 여러 쌍이 서로 연결될 때만 내부에 역동작을 만들 수 있는 필드를 지정합니다.기본값은 True입니다.9. through_fields: 연결된 필드를 설정합니다.

  • 외부 키: 일대일 및 일대다 관계에서 on 을 설정해야 합니다delete 속성은 관련 데이터가 삭제되었을 때 외부 키를 설정할 때 on 을 통과해야 한다는 것을 설명합니다delete 옵션은 메인 테이블에서 데이터를 삭제할 때 외부 키 인용 테이블 데이터를 어떻게 처리하는지 가리킨다.django.db.models에 선택 가능한 상수 포함: ondelete = models. CASCADE(캐스케이드): 메인 테이블 데이터를 삭제할 때와 함께 외부 키 테이블의 데이터 PROTECT 삭제(보호): ProtectedError 보호 이상을 던져서 메인 테이블에 외부 키로 적용된 데이터 삭제를 막는 SETNULL(NULL로 설정): 연관된 값을 null로 설정합니다. SETDEFAULT(기본값으로 설정): 연관된 값을 기본값으로 설정합니다(전체 키 필드는 기본값을 설정해야 함)DONOTHING(아무 작업도 하지 않음): 데이터베이스 앞에 캐스케이드를 지정하면 IntegrityError 무결성 예외db 가 표시됩니다.constraint (제약): 데이터베이스에 키 제약을 만들 지 여부입니다. 기본값은 True입니다.SET () (설정): 그것과 관련된 값을 지정한 값으로 설정하거나, 그것과 관련된 값을 실행 가능한 대상의 되돌아오는 값 모델로 설정합니다.SET(값) 또는 특정 메서드 models를 호출합니다.SET(실행 가능한 객체 함수 이름)
    여러 쌍의 관계를 연결하는 세 가지 방법은 다음과 같다. 첫째, 스스로 세 번째 표를 만드는 방식이다. 둘째, ManyToManyField를 통해 자동으로 세 번째 표를 만드는 방식이다. 셋째, ManyTomanyField를 설정하고 스스로 만든 세 번째 표를 지정한다.
       ******************************
    

    좋은 웹페이지 즐겨찾기