오도원입니다.

건강과 행복을 위하여

반응형

Development/Django 3

[Django] 에러 : object has no attribute 'update'

장고로 개발하다가 이러한 문제가 발생했다. Exception Value: 'Student' object has no attribute 'update' ...생략... this_student = Student.objects.get( No=request.data['No'] ) this_student.update( Stduent_No=request.data['Stduent_No'], Phone=this_phone, UpdateTime=request.data['UpdateTime'], Current_Num=request.data['Current_Num'], ) ...생략... 원인. 이유는 즉슨, .get()은 individual object, 딱 하나의 객체를 반환한다. 그러나 .update()는 오직 que..

Development/Django 2020.10.08

(Django) 테이블 초기화하기; reset table

장고 개발을 진행하다가 테이블명을 잘못 적어서 테이블명을 다시 적고 마이그레이션을 했는데 id값이 엉켜서 이도저도 못하는 상황에 직면했다. 그래서 마이그레이션 파일을 삭제해서 테이블을 초기화하고자 했다. 1. 마이그레이션 파일 삭제 마이그레이션 디렉토리(migrations) 안에 __init__.py 모듈 제외한 모든 파일을 전부 지운다. find . -path "*/migrations/*.py" -not -name "__init__.py" -delete find . -path "*/migrations/*.pyc" -delete 2. 데이터베이스 제거 dp.sqlite3파일을 삭제한다. 다른 DB엔진을 사용한다면 해당 데이터베이스를 삭제한다. 3. 새 스키마 생성 python manage.py makem..

Development/Django 2020.09.14

(Django) QuerySet과 객체 접근방식

1. QuerySet이란. QuerySet은 데이터베이스에서 전달받은 객체들의 list이다. 각 객체들은 DB에서 하나의 record(row)에 해당한다. Python으로 작성한 코드가 SQL로 mapping되어 QuerySet이라는 자료 형태로 값이 넘어온다. ORM 코드가 객체를 불러오지만 실제 DB에 쿼리가 이루어지는 것은 아니다. QuerySet의 lazy한 특성으로 인해 실제 데이터를 가져오기 위해서는 iterate시켜야한다. 2. 객체 접근방식 DB는 column(field)와 row(record)에 데이터가 저장된다. Django에서 필드에 해당하는 부분은 모델의 각 클래스 안에서 지정해준 속성들이다. 레코드에 해당하는 부분은 각 속성에 부여되는 값들이다. 테이블의 레코드마다 dictiona..

Development/Django 2020.09.08
반응형