Programming138 [Python Django] 🐍 Django에서 ManyToManyField .add() 시 발생하는 ValueError 해결하기 Django ORM을 사용하다 보면, ManyToManyField 관계에서 .add()를 사용하려다가 아래와 같은 오류를 만날 수 있습니다.ValueError: Cannot add "": instance is on database "default", value is on database "None"이 에러는 초보자뿐만 아니라 숙련자에게도 자주 혼동을 주는 문제입니다.이 글에서는 이 오류가 왜 발생하는지, 그리고 어떻게 해결할 수 있는지를 명확하게 정리해보겠습니다.💥 문제 상황from book_outlet.models import Book, Countrymys = Book.objects.all()[1] # "My Story" 책germany = Country(name="Germany", code="DE.. 2025. 7. 23. [Python Django] ❓Django에서 Author 모델에 slug를 꼭 만들어야 할까? Django에서 slug는 사람이 읽기 쉬운 URL을 만들 때 자주 사용됩니다.그런데 Book처럼 직접 보여지는 페이지가 아닌, Author 모델 같은 경우에도 굳이 slug를 만들어야 할까요?이번 글에서는 Author 모델에 slug 필드가 필요한지, 불필요한지 판단할 수 있도록 상황별로 정리해 보았습니다.✅ slug를 Author에 만들어야 하는 경우1. 작가 상세 페이지가 존재하는 경우예를 들어 사용자가 /authors/jk-rowling/ 같은 URL로 작가 정보를 확인할 수 있다면 slug는 꼭 필요합니다.def get_absolute_url(self): return reverse("author-detail", args=[self.slug])→ 검색 최적화(SEO)에도 좋고, 사용자가 UR.. 2025. 7. 23. [Python Django] 💥 Django Admin prepopulated_fields 오류 해결기: slug 컬럼 없음 에러 Django 프로젝트에서 Book과 Author 모델을 만들고, slug 필드를 자동 생성하려고 할 때 prepopulated_fields 설정 중 다음과 같은 에러를 만났습니다.❗ 에러 메시지OperationalError: no such column: book_outlet_author.slugAdmin 페이지에서 /admin/book_outlet/book/에 접근하자마자 위와 같은 500 오류가 발생했습니다.🔎 원인 분석이 에러는 models.py에 Author.slug 필드를 추가했지만, makemigrations 및 migrate를 하지 않아 DB 테이블에 컬럼이 생성되지 않았기 때문입니다.Django는 admin 페이지에서 slug 값을 조회하려고 시도하지만, DB에는 해당 필드가 존재하지 않아.. 2025. 7. 23. [Python Django] The Practical Guide - Admin, Relationship The Django Admin FeatureEasy & Powerful Data Administrationbook_outlet//admin.pyadmin.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=mo.. 2025. 7. 23. [Python Django] The Practical Guide - Data & Models (3) Model URLs li>a href="{% url "book-detail" book.id %}">{{ book.title }} (Rating: {{ book.rating }})a> li> index.htmlurlpatterns = [ path("", views.index), path("", views.book_detail, name="book-detail")]urls.pyURL을 생성하기 위해 {% url %} 템플릿 태그 사용def get_absolute_url(self): return reverse("book-detail", args=[self.id]) models.py li>a href="{{ book.get_absolute_url }}">{{ book.title }} (Rating: {{ bo.. 2025. 7. 22. [Python Django] The Practical Guide - Data & Models (2) {% extends "book_outlet/base.html" %}{% block title %} All Books{% endblock %}{% block content %} {% for book in books %} {{ book.title }} (Rating: {{ book.rating }}) {% endfor %} {% endblock %}index.html from django.shortcuts import get_object_or_404, renderfrom django.http import Http404from .models import Book# Create your views here.def index(request): .. 2025. 7. 22. 이전 1 ··· 8 9 10 11 12 13 14 ··· 23 다음