https://www.youtube.com/playlist?list=PLo7TNe_pEoMXcsc1dOaFyVGcZK8o-6CCW
Hoc ve Models
- cac loai Field co trong django rest
- def __str__(self): | => format hien thi object tren admin page
- class Meta: | => them chuc nang sap xep object theo Field, chinh name hien thi cua Model
- def save(self, *args, **kwargs): | => action while save data in db
- ForeignKey chu y: co cac kieu on_delete khac nhau
- OneToOneField chu y: co cac kieu on_delete khac nhau, quan he 1-1
dung APIView: khong co serializer: postMethod phai tao chay nhu tren
dung APIView: co su dung serializer: postMethod ngan gon
dung serializer.Serializer :
- phai viet ham create, update de khi post va put .save() map voi funtion tren
su dung ModalSerializer: duoc ho tro het
generics: ho tro api GET POST PUT DELETE
Chu y: generics.UpdateAPIView tham so default la 'pk'.
Muon thay doi phai set: lookup_field ="name_field"
dung viewSets.ModelViewSet: ho tro tu a -> z
pip install psycopg2-binary
version: "3"
services:
postgres:
container_name: postgres_container
image: postgres
environment:
POSTGRES_USER: admin
POSTGRES_PASSWORD: admin123
PGDATA: /data/postgres
volumes:
- postgres:/data/postgres
ports:
- "5000:5432"
networks:
- postgres
restart: unless-stopped
networks:
postgres:
driver: bridge
volumes:
postgres:
pip install django-seed
khai bao "django_seed" trong setting
python manage.py seed new_app --number=10
pip install django-debug-toolbar
khai bao "debug_toolbar" trong setting
delete old db => can migates new app
khai bao authentication_classes default trong settings:
REST_FRAMEWORK = {
"DEFAULT_AUTHENTICATION_CLASSES": ("gateway.authentication.Authentication",)
}
"gateway.authentication.Authentication" la class trong app gateway, file authentication