The Django Admin Feature
Easy & Powerful Data Administration
book_outlet//admin.py

admin.site.register(Book)
admin.py
Data Relationship
데이터는 종종 연결되어 있다.
j.k 롤링은 해리포터의 많은 시리즈를 작성했다.
다양한 종류의 데이터 연결 타입이 있다. 일대일, 일대다, 다대다..
각각의 관계를 하나씩 살펴보자
class Author(models.Model):
first_name = models.CharField(max_length=100)
last_name = models.CharField(max_length=100)
author = models.ForeignKey(Author, on_delete=models.CASCADE)
CASCADE, PRO, SET -> 다양한 조건이 있음. ..
One-to-One: book - author의 관계
class Author(models.Model):
first_name = models.CharField(max_length=100)
last_name = models.CharField(max_length=100)
def full_name(self):
return f"{self.first_name} {self.last_name}"
def __str__(self):
return self.full_name()
One-to-many
class Address(models.Model):
street = models.CharField(max_length=80)
postal_code = models.CharField(max_length=5)
city = models.CharField(max_length=50)
class Author(models.Model):
first_name = models.CharField(max_length=100)
last_name = models.CharField(max_length=100)
address = models.OneToOneField(
Address, on_delete=models.CASCADE, null=True)

class Address(models.Model):
street = models.CharField(max_length=80)
postal_code = models.CharField(max_length=5)
city = models.CharField(max_length=50)
def __str__(self):
return f"{self.street}, {self.postal_code}, {self.city}"

한 줄 추가됨으로서 가독성이 좋아짐!
class Meta:
verbose_name_plural = "Address Entries"
class 안에 class Meta를 만들었다.


일대일 관계로 설정되어 있어서 안됨..
Many-to-Many
많은 나라에 책을 출판했을 수도 있다. 많은 책을 .. 다대다
class Country(models.Model):
name = models.CharField(max_length=80)
code = models.CharField(max_length=2)
Book에 한 줄 추가
published_countries = models.ManyToManyField(Country)
one-to-one 과 달리 on_delete 선택이 없음.
다대다이기 때문에 = 이 아니라 .add로 리스트에 추가한다!
그나저나 udemy에 한글 버전이 없었는데, 크롬 확장 프로그램에 자동으로 번역해주는 기능이 있었다!
찾아주신 분, 만들어주신 분 감사합니다. ...
Udemy 한글 자막 - Google 번역, DeepL 번역 - Chrome 웹 스토어
Udemy 영어 자막 번역 / 한글 자막 띄우기
chromewebstore.google.com
'Programming > Django' 카테고리의 다른 글
| [Python Django] ❓Django에서 Author 모델에 slug를 꼭 만들어야 할까? (6) | 2025.07.23 |
|---|---|
| [Python Django] 💥 Django Admin prepopulated_fields 오류 해결기: slug 컬럼 없음 에러 (3) | 2025.07.23 |
| [Python Django] The Practical Guide - Data & Models (3) (3) | 2025.07.22 |
| [Python Django] The Practical Guide - Data & Models (2) (2) | 2025.07.22 |
| [Python Django] The Practical Guide - Data & Models (4) | 2025.07.22 |