Преглед садржаја
Када се модел и све што је с њим успостављено, следећи аспект који треба узети у обзир је како различита поља ступају у интеракцију са базом података.Када говоримо о понашању базе података, мислимо на начин на који морамо видети како су подаци припремљени за складиштење, на начин на који правимо поређења са типовима података Питхон са којима су њихове вредности представљене у нашој апликацији у Дјанго.
дб_типе (селф, веза)
Овај метод се ретко замењује апликационим класама и подкласама, враћа низ који садржи одређене податке базе података који контролише како се стварају колоне одређених поља.
Важно је напоменути да је вредност враћена овом методом специфична за бацкенд базе података која се користи у апликацији, па ако одлучимо да је користимо у пројектима са различитим позадинама базе података, морамо добити вредност везе помоћу цоннецтион.сеттингс_дицт ['ЕНГИНЕ']
Погледајмо на следећој слици како можемо да преведемо у код основну употребу ове методе:
гет_преп_валуе (себе, вредност)
Ово је метода која служи као основа за друге методе које морају припремити податке за употребу у бази података.
У већини случајева конверзија питхон објекти Једноставнији подаци који се могу пренијети у базу података не представљају велики проблем и можемо користити стандардну конверзију, међутим када желимо извршити сложеније конверзије, попут врсте датума, можемо користити ову методу да се побринемо за тај посао, на следећој слици имамо начин да постигнемо ово што смо описали.
гет_дб_преп_валуе (сопство, вредност, веза, припремљено = Нетачно)
Постоје случајеви у којима се наша апликација изводи у више од једне машине базе података, јер нам ова метода омогућава да припремимо податке на основу машине, захваљујући цоннецтион.сеттингс_дицт ['ЕНГИНЕ'] можемо да уградимо различите футроле у зависности од мотора.
Пример је када радимо са постгреСКЛ -ом, овај механизам може директно да рукује објектима датума, па ако откријемо да је то то, можемо директно да пренесемо вредност, да видимо у доњем примеру како комбинујемо овај метод и претходни са постићи робуснији резултат: