11월, 2019의 게시물 표시

Django + Postgresql에서 duplicate key value violates unique constraint 오류

0. 환경 - Python 3.7 - Django 1.11 - Postgresql 9.6 Django 관리자 페이지에서 row를 추가하려니 "duplicate key value violates unique constraint"오류가 발생했다. http://searene.me/2016/01/10/django-db-utils-IntegrityError-duplicate-key-value-violates-unique-constraint/  이 페이지 참조해서 sequence를 바꿔주었다. 1. 데이터베이스 접속   \list로 데이터 베이스 이름 확인 후 \connect [데이터베이스이름] 으로 수정할 데이터베이스에 접속한다. 2. id 최댓값 확인   sequence의 마지막 값(=해당 테이블의 마지막 id)는 아래 명령어로 확인할 수 있다. SELECT last_value FROM [sequence이름]; sequence이름은 보통 [테이블이름]_id_seq이고, django에서 만들어주는 테이블 이름은 [앱이름(소문자)]_[모델이름(소문자)]이니까 보통은 [앱이름]_[모델이름]_id_seq로 찾으면 된다. 처음 테이블을 만든 후 모델이름을 수정해도 sequence이름까지 바뀌진 않으니 아래 명령어로 정확히 확인해보자. SELECT c.relname FROM pg_class c WHERE c.relkind = 'S'; sequence의 last_value가 해당 테이블의 마지막 id가 아니면 sequence를 수정해야 한다. 3. sequence 수정 ALTER SEQUENCE [sequence이름] RESTART WITH [마지막id+1];

React native 0.59 + SDK 28(+AndroidX)로 업그레이드하면서 발생한 문제

0. 환경 (개발) - react-native 0.54 -> 0.59 - react 16.3 - mobx-react 5.1 -> 5.4 - mobx 4.3 -> 5.9 - babel ? -> 7 - babel-jest 24.3 -> 24.9 - sdk 26 -> 28 - android build tool 26 -> 28 - gradle 4.4 -> 4.10 - gradle build tool 3.1 -> 3.3 - google services 4.0 -> 4.2 - 64bit architecture 추가 - firebase-core 16 -> firebase-core 17 - react-native-google-signin 1.0 -> react-native-google-signin 2.0 (테스트) - android 8 - galaxy s8 1. 상황   잘 돌아가고 있던 프로젝트를 다시 실행했더니 빌드가 안된다. 찾아보니 패키지 버전 문제인 것 같아서 버전을 전체적으로 올리기로 결정. 2. sdk 버전 업 1) "Manifest merger failed : Attribute application@appComponentFactory..." 에러 발생    https://cishome.tistory.com/108 를 참조해서 gradles.properties에 아래 코드를 추가했다. android.useAndroidX=true android.enableJetifier=true 2) "cannot find symbol ..." 에러 발생   sdk 버전을 올리면서 android.으로 시작하는 패키지가 androidx.로 바뀌어서 못찾아오는 걸로 추정된다.( https://github.com/invertase/react-native-firebase/issues/2332 참조) 이걸 자동으로 해