transaction.atomic() 이 중요해서, 하나 저장 https://blog.doosikbae.com/146 Django DB Transaction 2편 - 명시적으로 transaction 활용하기. (feat. savepoint) Introduction 안녕하세요. 1편 Django Transaction(트랜잭션) 1편 - Request와 DB Transaction 묶기(Feat. ATOMIC_REQUESTS) Django Transaction(트랜잭션) 1편 - Request와 DB Transaction 묶기(Feat. ATOMIC_RE.. blog.doosikbae.com # O 추천하는 방법. try: with transaction.atomic(): # dummy query for exa..
영문으로 된 질문은 Foreign key field value instead of id without nesting schemas? 즉, Schema 만들때 외부키로 연결된 모델의 필드 값을 같이 볼 수 있도록 하는 방법, 그러나 nesting 되기를 원하지 않는다. 그냥 쉽게 하면 nesting으로 되기 때문에 중괄호 안에 또 중괄호가 생겨서 그 값을 가져와야 한다. 그냥 장고 템플릿에서 하는 것 처럼 "외부키__필드명" 이런형태로 막 가져오면 좋으련만 그르케 되지 않네 참고로, nesting 된다는 의미는 아래 결과 값을 참고하면 금방 알 수 있다. dep 밑에 dep 필드 가져오려면 복잡해 지제 { id: 1000, name: 'Some name', dep: { dep: 'Some Text' } }..
model 에 바인딩된 model form view 등을 쓰게 되면 사용자 정의 필드, 혹은 값을 따로 받아서 처리하기가 약간 애매했다. 머든 방법은 있으니깐,, form 에서 사용자 변수 필드를 hidden 으로 보내줘도 받는놈이 받아야 하는데, model 에 연결된 것들은 해당 필드만 싹 가져오니깐 내가 고생해서 올려준 필드값을 볼 수 없다. 그래서 form_valid 를 overriding 해서 미리 보고, 내부 변수에 넣어두고 사용하자. @method_decorator(admin_required, name="dispatch") class PartsUpdateView(BSModalUpdateView): model = Parts filter = "" template_name = "devices/_mo..
장고 모델을 만들다 보면, unique 필드로 키를 등록해서 사용하곤 한다. 그런데 중복은 되는데 각 사용자별 중복은 허용하지 않도록 지정하기 위해서는 2개 이상의 필드를 묶어서 unique 하게 동작하도록 해야 한다. 이때 사용하는 구문은 다음과 같다. UniqueConstraint https://stackoverflow.com/questions/2881043/django-create-a-unique-database-constraint-for-2-or-more-fields-together Django 2.2 introduced UniqueConstraint and the note in the official documentation on this topic suggests that unique_toge..
내부 함수가 머가 있는지 막 찾아보는데, 그냥 여기 하나 저장해 두자. 검색어는 django updateview get_success_url form_class access 이런식으로 쳐봤다. 먼가 기본 기능하다가 막 오버라이딩 하고 싶은 욕구가 많은 뷰이긴 하다. 수정이라는 기능이...상태를 바꾸거나, 어떤 작업을 해 주고 싶은데 딱 해당 폼 값만 바꾸기는 아쉽다. 아래 함수들 중에 아무거나 골라서 overriding 해서 사용하기 바란다. 보통 form_valid() form_invalid() 를 많이 쓰긴 한다. from https://dongsik93.github.io/til/2019/12/20/til-django-cbv(4)/ class FormMixin(ContextMixin): """Prov..
Django admin에 어렵게 model을 등록해 두었는데, 관리자가 들어가서 자료를 볼때 object(id) 이런식으로 나오니깐 클릭해서 들어가기 전에 이 객체의 정보의 힌트를 볼 수 없어 답답했다. 이를 해결해 보자 아래 그림을 보자. Company Object(id) 이렇게 나오니, 실제 어떤 값이 들어 있는지는 클릭해서 들어가서 자세한 필드 내용을 봐야 안다. 여기 리스트에서 그냥 대충이라도 보고 싶은 욕구가~~~ 아주 쉽게 해결이 되었다. models.py에 선언하면서 __str__(self) 함수를 등록해 두면 되는 것이다. class Company(TimeStampedModel): name = models.CharField(max_length=255) is_deleted = models.I..