inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

파이썬/장고 웹서비스 개발 완벽 가이드 with 리액트

장고 admin을 통한 데이터 관리

admin page 에서 label 관련 질문입니다.

245

codebot053

작성한 질문수 1

0

강의 내용을 따라가며 short_description 을 사용하여 Post model 에서 정의된 글 작성자의 id 를 admin 에서 볼수 있도록 설정해보았습니다.

author_id 라는 method 를 모델에서 정의하였으며 추가로 label 을 따로 설정하였고 이를 admin.py 에서 list_display 리스트에 추가하여 주었습니다. 

하지만 admin 페이지에서 확인해본 결과 Post model 에서 따로설정한 label 이 아니라 author_id 라는 default 값이 출력되며 처음 method 선언시 설정한 return 값인 self.author.id 의 값을 주석처리하고 다른 값을 넣었음에도 변경되지 않는 상황이 발생했습니다. 혹시 제가 인지하지 못하고 놓치고 있는 부분이 있는지 궁금합니다.!!

django docker python react

답변 4

1

codebot053

앗 그렇군요ㅠㅠ 헷갈리는 계념과 모델 생성시에 고려할 것들을 더 알아봐야곘습니다..! 감사합니다!!

1

이진석

안녕하세요.

Post 모델에서 author = models.FK 필드를 선언하셨습니다. 이는 DB에는 author_id 이름의 컬럼이 생성이 됩니다. DB를 직접 열어보시면 확인하실 수 있구요.

그래서 author_id 이름의 필드가 이미 있기에, Post 모델에 author_id 이름의 메서드를 정의하셔도 admin에서는 author_id 필드를 참조하고 있는 상황인 듯 합니다.

기존에 author_id 필드가 있으니, 이름이 겹치지 않게 author_id가 아닌 다른 이름으로 메서드를 정의하시면 해결이 되실 듯 하네요.

해결되셨다면 본 질문의 상태를 해결됨으로 변경 부탁드립니다.

화이팅입니다. :-)

0

이진석

해결되셨다면 본 질문의 상태를 해결됨으로 변경 부탁드립니다. :-)

0

codebot053

모델에서 FK 로 참조할경우 모델의 필드명이 db column에 그대로 들어가는것이 아니라 "필드명_id" 의 형태로 column에 저장되는것이였군요ㅠㅠ 

빠르고 명쾌한 답변 감사합니다!! 🫡

0

이진석

author_id 필드는 DB 입장에서의 외래키값이고, author 필드는 외래키 값을 활용한 모델 인스턴스가 되는 거죠.

그리고 author_id 필드명은 디폴트명이고 db_column 인자로 이름을 변경하실 수도 있습니다. 모든 모델 필드가 가능하구요. 하지만 이는 DB 스키마 변경을 유발하기에, db_column 인자 지정이 필요하시다면 모델 생성 초기에 지정해주시는 것이 좋습니다.

화이팅입니다. :-)

안녕하세요.

0

62

1

[OneToOne Field Demo] get_user_model() 메서드를 활용해야 하는 이유?

0

285

1

useEffect 훅에서 else 유무에 따른 결과

0

222

1

useAxios 훅의 dependency array 설정

0

254

1

useEffect에서 변수 업데이트 관련 질문

0

389

1

rest_framework.generics.CreateAPIView의 model 속성 유무

0

276

1

bootstrap4

0

481

4

리뉴얼 강의가 오픈이 되면 기존 강의는 더이상 못보는걸까요

1

374

1

admin form에서 앞선 필드 선택 후 다른 필드 select widget 구성하는 방법

0

578

3

useState는 필수일까요?

0

272

1

python manage.py makemigrations instagram 시 created_at default 오류가 발생합니다.

0

610

4

Django allauth를 사용한 소셜 로그인 시 에러

0

660

1

프로젝트명 변경 뒤, 디버그툴바+디버그모드 사용 시 에러

0

569

2

useLocalStorage() 함수 사용여부

0

238

1

django에 LOGIN_URL = '/accounts/login/'의 의미?

0

454

1

리듀서의 의미 재확인

0

439

1

simple-jwt Refresh Token 사용 노하우

0

907

2

docker compose 를 통한 배포 관련 오류 문의

0

686

1

파이썬 속도 장고 관련 궁금한게 있습니다.

0

372

1

is_like_user

0

238

1

related_name 오류

0

278

1

re_path 오류

0

265

1

re_path url

0

255

1

No post matches the given query

0

671

2