Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

Django 모델에서 Pickle 필드 만들기

<시간/>

Python의 Pickle은 주로 Pythonobject 구조를 직렬화 및 역직렬화하는 데 사용됩니다. 즉, Python 개체를 바이트 스트림으로 변환하여 파일/데이터베이스에 저장하거나 세션 간에 프로그램 상태를 유지하거나 네트워크를 통해 데이터를 전송하는 프로세스입니다.

이 기사에서는 피클 객체를 저장할 Django 필드를 만드는 방법을 살펴보겠습니다. models.py에서만 작업합니다. 및 Django 쉘

먼저 django-picklefield를 설치합니다. 패키지 -

pip install django-picklefield

예시

models.py에서 -

from django.db import modelsfrom picklefield.fields import PickledObjectField# 여기에서 모델을 생성하세요.class new_model(models.Model):args =PickledObjectField()

여기에서 모델을 만들고 피클을 추가했습니다. 필드.

이제 작동 여부를 확인하겠습니다. 터미널에서 "pythonmanage.py shell"을 실행합니다. 다음을 입력하십시오 -

myapp.models에서 가져오기 *obj=new_model(args=['fancy', {'objects':'inside'}]).save()new_model.objects.all()

셸을 실행하고 피클 개체를 저장할 수 있는 새 모델 인스턴스를 만듭니다. 여기에 저장된 모든 개체는 피클로 변환됩니다. 개체.

모델에 저장하려면 다음과 같이 작성할 수 있습니다. -

django.http import HttpResponsedef my_view(request):Object=new_model(args=['fancy',{'name':'ath'}]) Object.save() return HttpResponse("객체 저장됨") 

피클을 추가할 수 있습니다. 개체 또는 이 필드에서 피클링할 수 있는 모든 것.

출력

[4]에서:new_model.objects.all()Out[4]:]>