728x90

전체 글 211

django 업데이트 시 파일 및 이미지 삭제.

django에서 image field 사용시 해당 필드가 업데이트 되거나, 삭제 되는 경우가 있다. 그 경우 로컬에 있는 파일도 삭제해줘야 되는데, 삭제 처리가 안되더라. (나중에 알게 된 사실) 그래서 로컬에 안쓰는 이미지 파일 들이 계속 쌓이는 현상이 생긴다. 삭제나 업데이트가 생겼을때 signal을 통해서 직접 처리 해주는 방법도 있겠지만, django-cleanup 패키지를 사용하면 간단하게 해결된다. 다만 트랜잭션 기능을 지원하지 않는 db의 경우데이터베이스는 롤백 되었는데, 파일은 삭제되어있는 경우가 있을 수 있다고 한다. 출처 . pypi.org/project/django-cleanup/

IT 2020.11.16

Vue global method 전역 함수 설정. for preventing javascript nested object null

[@/plugins/get_safe.js] .. const getSafe = { install(Vue){ Vue.prototype.$get = function(obj, key) { return key.split(".").reduce(function(o, x) { return (typeof o == "undefined" || o === null) ? o : o[x]; }, obj); } } } export default getSafe; [main.js] import getSafe from "@/plugins/get_safe"; ... Vue.use(getSafe); 이렇게하면 nested object가 null이더라도 에러가 나지 않고 페이지가 정상적으로 호출된다. 다만 데이터가 비어있을뿐. 이와 같은 코..

IT 2020.11.13

django admin 기본 translation(18n) 메시지 위치

github.com/django/django/blob/stable/3.0.x/django/contrib/admin/locale/ko/LC_MESSAGES/django.po django/django The Web framework for perfectionists with deadlines. - django/django github.com i18n 적용 시, 기본 translation 메시지가 있는 경우 해당 메시지 id로 따로 번역 id생성이 필요없다. 본인 버전별로 확인해보면 좋을듯하다. 나도 만들어야할 내용들 중 많은 내용이 이미 번역되어있더라. template tag 안에서 translation 사용 방법은 {% trans "msgid" %} 이다. 3.1부터 {% translate "msgid" ..

IT 2020.11.12

django 비밀번호 변경, 리셋 페이지 구현

docs.djangoproject.com/en/3.1/topics/auth/default/#all-authentication-views Using the Django authentication system | Django documentation | Django Django The web framework for perfectionists with deadlines. Overview Download Documentation News Community Code Issues About ♥ Donate docs.djangoproject.com 이미 django auth system에서 기본적으로 제공해주고 있다. frontend쪽에서 비밀번호를 받아서 서로 통신하도록 구현하는건 매우 비효율 적이고 보안 문제도..

IT 2020.11.12

겨울철 달리기 준비할 것들#달리기 한달차

겨울철에는 여름철보다 몸이 많이 굳어있다. 그렇기 때문에 달리기할 때도 조심해서 달리는게 좋다. 특히나 건강해지려고 하는 달리기로 부상을 가져오게 되면 일상생활에 지장이 있고 달리기에 의욕이 떨어질 수가 있다. 그래서 아래와 같이 네가지는 꼭 챙겨주는게 좋다. 1. 안전한 장소 달리기를 할때 혹여나 일반 도보나 울퉁불퉁한 바닥이 있는 곳에서 하다가 발목을 삐끗하게 되면 후유증이 상당하다. 나는 아직 겪어보지 않았지만 어릴때 삐끗한 경험으로 몇일동안 쩔둑거리며 다녔던 기억이 있기에 그런 경험을 하고 싶지 않다.ㅎ 그렇다면 달리고 싶어도 달릴 수 없고, 자주 발목을 접지르게되면 만성적으로 발목 부상의 위험에 노출될 수도 있다. 그렇기에 평평한 공원에서 달리는게 좋다. 너무 붐벼서 싫다면 이른 시간 새벽에 나..

운동 2020.11.12

집중력과 달리기, 회복탄력성 #013

운동을 한 뒤 정신이 많이 맑아졌다. 무언가에 집중하는 집중력도 높아졌다. 달리기를 할 때 특징이 잡념이 많이 들지 않는 다는 것이다. 한발자국 내 딛는데에 내 정신을 집중하는 경우가 많고, 몸을 움직이는 활동의 경우 머리로 생각하는 활동 보다 잡념이 많이 들지 않는다. 달리기를 하고 나서 느낀 것들은 체력이 확실이 강인해 졌다. 이전에는 커피 없이 하루 활동하다보면 오후 정도가 되면 많이 지친다는 느낌을 받았으나 요새는 커피 없이도 그다지 지치지 않는다. 그리고 달리는 동안에도 과거처럼 크게 힘들다는 느낌이 안든다. 페이스 조절을 잘하면 지금이라도 5km 연속 뛰기가 가능하지 않을까? 하는 생각이 든다. 주차가 올라가면 올라갈 수록 뛰는 거리가 길어지기 때문에, 피로도가 높아져야할 것 같은데 규칙적인 ..

운동 2020.11.04

Vee-Validate 명시적으로 validate 체크하기.

기본적으로 vuetify에서 vee-validate를 사용하면 묵시적으로 태그에서 change, click, blur등 다양한 이벤트가 발생할때마다 해당 field의 validation을 체크해준다. 이점은 장점이 될 수도 있지만 때로는 단점이 될 수 있다. 예를들면 Input tag에서 click event 발생 시 dialog를 띄우고 dialog 내부의 form을 통해 어떠한 데이터를 입력한다고 해보자. 그경우 input 태그를 클릭하자마자 띄워진 dialog 창으로 focus가 이동하면서 input에서는 blur event가 발생한다. 해당 이벤트로 인해 validation 체크가 일어나고, 혹여나 required prop이 선언되어있다면, validation 에러가 발생할 수밖에 없다. 이문제를..

IT 2020.11.03
728x90