월 44,000원
5개월 할부 시다른 수강생들이 자주 물어보는 질문이 궁금하신가요?
- 미해결파이썬/장고 웹서비스 개발 완벽 가이드 with 리액트 (장고 4.2 기준)
커리큘럼 관련 문의건
좋은 강의 감사합니다!혹시 테스트코드는 커리큘럼에 없죠...?
- 미해결파이썬/장고 웹서비스 개발 완벽 가이드 with 리액트 (장고 4.2 기준)
11-29 django-taggit 라이브러리
해당 강의에서 @hook의 AFTER_SAVE를 이용하여 tags를 업데이트 하는 것으로 확인하였습니다. 그렇다면 content의 내용에 수정이 이루어진 Note들은 tags 필드가 업데이트가 되지만 수정을 하지 않은 기존 Note들은 tags 필드가 비어있게 되는 것 같습니다. Content 수정한 Note : tags 필드가 hook에 의하여 업데이트 되어 저장됨Content 수정하지 않은 기존 Note : tags 필드가 업데이트 되어있지 않음혹시 강의 중에 제가 놓치거나 한 부분이 있을까요?
- 해결됨파이썬/장고 웹서비스 개발 완벽 가이드 with 리액트 (장고 4.2 기준)
메모리 효율성을 개선한 버전 질문 있습니다.
for chunks in get_chunks(zipcode_list, chunk_size=1000): print("chunk size:", len(list(chunks))) ZipCode.objects.bulk_create(chunks)https://gist.github.com/allieus/f16d5d35b84d418cbabcfed8e69b96e2깃허브 Gist에 올라온 코드를 그대로 복사 붙여넣기 하고 마이그레이트를 했더니 데이터 베이스에 데이터가 삽입이 안되었습니다.그래서 디버깅을 해보았는데 위에 해당 코드블럭 부분에서 print("chunk size:", len(list(chunks)))은 그저 디버깅을 위한 코드일텐데 해당 구문이 bulk_create 보다 먼저 선언 되어있다면 데이터 삽입이 이루어지지 않습니다.Django 버전 문제인가 싶어서 5.0.4에서 4.2.7로 버전을 내린 다음 해봐도 결과는 같네요. 제너레이터 문법은 이번 강의에서 처음 접하였는데 해당 문법과 연관이 있는것인가요?
- 해결됨파이썬/장고 웹서비스 개발 완벽 가이드 with 리액트 (장고 4.2 기준)
[View 함수를 통한 요청 처리] 챕터 아카이브 관련 질문 있습니.
<div> <h3>Nav</h3> <div class="alert alert-info"> 지난/다음 달 context data를 지원 </div> <div class="btn-group d-flex w-100"> {% if previous_month.year and previous_month.month %} <a href="{% url 'hottrack:song_archive_month' previous_month.year previous_month.month %}" class="btn btn-primary"> 지난 달 </a> {% endif %} {% if next_month.year and next_month.month %} <a href="{% url 'hottrack:song_archive_month' next_month.year next_month.month %}" class="btn btn-primary"> 다음 달 </a> {% endif %} </div> </div>2014-02 , 2023-09 release_date의 최소, 최대 구간에서 조회시 에러가 납니다. 깃허브 및 강의 내용 확인 결과 처리하는 부분이 반영이 안되어있는거 같습니다./hottrack/archives/2020/week/35/2020년 35주, 2020년 23주, 2020년 14주, 2019년 39주, 2014년 7주다른 부분은 정상 작동 되지만 해당 부분에서 에러가 납니다.2020의 35주는 8월24일, 2014년 7주는 2월10일 부터인데 데이터 베이스에서 조회 할때는 확인 됩니다.매번 장고 프로젝트를 생성하고 환경설정 하는게 번거로워서 미리 초기 세팅을 해놓은 프로젝트에 깃허브 저장소에서 mydjango03-hottrack에서 hottrack 앱을 복사하였고 [View 함수를 통한 요청 처리]의 내용을 그대로 따라 진행했습니다.git clone으로 저장소에서 mydjango04를 받고 테스트 해보려 했었는데 env 파일이 없어서 에러가 나기에 테스트를 못해봐서 왜 저 부분에서만 에러가 나는것인지 궁금해서 질문드립니다.버전 호환성에 따라 문제가 될 수 도 있을거 같아서 제가 설정한 초기 세팅 부분은 혹시 모르니 첨부 해놓았습니다.Pipfile[[source]] url = "https://pypi.org/simple" verify_ssl = true name = "pypi" [packages] django = "*" djangorestframework = "*" djangorestframework-simplejwt = "*" django-filter = "*" django-extensions = "*" django-environ = "*" django-cors-headers = "*" django-template-partials = "*" django-htmx = "*" psycopg2-binary = "*" pillow = "*" markdown = "*" ipython = "*" black = "*" requests="2.31.0" pandas = "2.1.3" django-bootstrap5 = "*" [dev-packages] pytest-django = "*" django-debug-toolbar = "*" httpie = "*" [requires] python_version = "3.12"Env# 암호키 SECRET_KEY=django-insecure-sf($0b=0xjgkzmsyu%*bn6cx9$_b%*rz=%$whp8(-^_q+ # 데이터 베이스 DATABASE_ENGINE=django.db.backends.postgresql DATABASE_HOST=localhost DATABASE_PORT=5432 DATABASE_NAME=mydb4 DATABASE_USER=myuser4 DATABASE_PASSWORD=mypw4 # 코어스 ALLOWED_HOSTS=localhost,127.0.0.1 CORS_ALLOWED_ORIGINS=http://127.0.0.1:3000,http://localhost:3000 CORS_ALLOW_CREDENTIALS=True # 타임존 LANGUAGE_CODE=ko-kr TIME_ZONE=Asia/Seoul USE_TZ=False # 디버그 DEBUG=True INTERNAL_IPS=127.0.0.1
- 미해결파이썬/장고 웹서비스 개발 완벽 가이드 with 리액트 (장고 4.2 기준)
11-07 htmx를 이용한 logout 구현 toast_messages.js 에러
hx-post 형식으로 logout을 구현하면서 body가 업데이트 되었을 때 .toast-container를 찾지 못해 에러가 나는 것 같습니다. 해당 강의 영상에서도 오류가 발생 한것으로 보이는데 해결방법을 물어뵈도 될까요? 에러가 발생하는 부분은 core/static/toast-messages.js 파일이며 const container = document.querySelector(".toast-container"); container.insertAdjacentHTML("afterbegin", html);이 부분에서 에러가 발생합니다. 콘솔 출력 오류는 아래와 같습니다. VM31 toast-messages.js:38 Uncaught TypeError: Cannot read properties of null (reading 'insertAdjacentHTML') at HTMLBodyElement.<anonymous> (VM31 toast-messages.js:38:15) at Object.ce [as trigger] (VM27 htmx.min.js:1:27036) at <anonymous>:6:18 at <anonymous>:7:13 at At (VM27 htmx.min.js:1:23205) at Nt (VM27 htmx.min.js:1:23332) at VM27 htmx.min.js:1:10573 at VM27 htmx.min.js:1:45022 at oe (VM27 htmx.min.js:1:4868) at s (VM27 htmx.min.js:1:44997)
- 미해결파이썬/장고 웹서비스 개발 완벽 가이드 with 리액트 (장고 4.2 기준)
이번 강의에서는 SONG이라는 sqlite3 데이터베이스를 import 하지 않았는데 데이터가 혹시 어디서 불러진 건가요???
model.py를 보면 Song클래스가 정의되었는데 데이터가 어디서 불러와 졌는지를 잘 모르겠습니다ㅠ 도움 부탁드립니다. from __future__ import annotations from datetime import date from typing import Dict from urllib.parse import quote from django.db import models from django.utils.html import format_html # 파이썬 3.7부터 지원 # @dataclass class Song(models.Model): # 장고 모델 아니고 일반 파이썬 클래스! melon_uid = models.CharField(max_length=20, unique=True) rank = models.PositiveSmallIntegerField() album_name = models.CharField(max_length=100) name = models.CharField(max_length=100) artist_name = models.CharField(max_length=100) cover_url = models.URLField() lyrics = models.TextField() genre = models.CharField(max_length=100) release_date = models.DateField() like_count = models.PositiveIntegerField() @property def cover_image_tag(self): return format_html('<img src="{}" style="width: 50px;">', self.cover_url) @property def melon_detail_url(self) -> str: melon_uid = quote(self.melon_uid) return f"https://www.melon.com/song/detail.htm?songId={melon_uid}" @property def youtube_search_url(self) -> str: search_query = quote(f"{self.name}, {self.artist_name}") return f"https://www.youtube.com/results?search_query={search_query}" @classmethod def from_dict(cls, data: Dict) -> Song: return cls( melon_uid=data.get("곡일련번호"), rank=int(data.get("순위")), album_name=data.get("앨범"), name=data.get("곡명"), artist_name=data.get("가수"), cover_url=data.get("커버이미지_주소"), lyrics=data.get("가사"), genre=data.get("장르"), release_date=date.fromisoformat(data.get("발매일")), like_count=int(data.get("좋아요")), )
- 미해결파이썬/장고 웹서비스 개발 완벽 가이드 with 리액트 (장고 4.2 기준)
장고에서 song_detail.html을 찾아가는 이유를 모르겠습니다.
본 강의에서 views.py에 urlpatterns배열을 수업 내용인 song_detail에서 song_ddetail로 바꾸고 실행시켜 보았는데 장고에서는 hottrack/song_detail.html을 찾고 있습니다.urlpatterns에 있는 views.song_detail이 있기때문에 song_detail.html을 찾는게 아닌가용?? 혹시 어떻게 하면 song_ddetail.html과 연결 시킬 수 있을까요?? hottrack / urls.pyfrom django.urls import path, re_path # urlpatterns리스트에 필요한 것. from . import converters # noqa from . import views # view매핑을 위해 임포트. urlpatterns = [ path(route="", view=views.index), path(route="archives/<date:release_date>/", view=views.index), re_path(route=r"^export\.(?P<format>(csv|xlsx))$", view=views.export), path(route="<int:pk>/cover.png", view=views.cover_png), path(route="<int:pk>/", view=views.song_ddetail), ]hottrack/views.pysong_ddetail = DetailView.as_view( # 디테일뷰 구현 model=Song, # 모델인자로 Song지정함. )template song_detail 함수를 song_ddetail로 변경하면 작동이 되지 않는데 이유가 무엇인지 궁금합니다.
- 해결됨파이썬/장고 웹서비스 개발 완벽 가이드 with 리액트 (장고 4.2 기준)
본 강의에서 dj-rest-auth나 django-allauth도 다룰예정인가요?
안녕하세요 강의 잘보고 있습니다. 특히 django template을 이용하여 작업하는 부분에서 도움 많이 되었습니다. django를 학습하면서 궁금한점이 몇 가지 생겨서 여쭤보려고 합니다. 나중에 업로드 되는 DRF 파트에서 dj-rest-auth, django-allauth와 같은 라이브러리를 다루는지 궁금합니다.DRF와 JWT를 이용하여 클라이언트의 react_hook_form + zod와 서버의 django serializer에서 유효성 검사를 진행중입니다. 여기서 서버, 클라이언트 둘 중 한 가지에서만 유효성 검사를 처리하는건 괜찮지만 두 가지 경우에서 유효성 검사를 처리 할때 유효성 검사의 성공 여부와 메세지를 그리는게 생각보다 까다롭더라고요.예를 들어 AUTH_PASSWORD_VALIDATORS 에서 기본 제공되는 유효성 검사를 settings에서 커스텀해서 serializers에 적용하게 된다면 해당 유효성 검사에 사용된 조건들을 추출해낼 수 가 없어서 zod 스키마에는 적용할 수 없었습니다. 따라서 아래 이미지와 같이 직접 전부 커스텀 해서 적용해야 했습니다.클라이언트에서 적절히 걸러내고 아이디 중복체크, 이메일 확인, 최종 유효성 검사 등등 필요한 경우에만 서버에서 유효성 검사를 요하여 트래픽을 줄이려고 하는데 보통 이렇게 처리하는게 맞는건지 궁금합니다.Django Serializers FileNext Typescript zod FileDisplay
- 미해결파이썬/장고 웹서비스 개발 완벽 가이드 with 리액트 (장고 4.2 기준)
좋아요 개수 올리기 관련 질문입니다
수업내용을 따라가다가 좋아요 개수가 올라가지 않아서맨아래와 코드와 같이 고쳤더니 좋아요가 올라갔습니다. 기존코드(주석된 것)와 같이likes_dict = get_likes_dict(melon_uid_list) # id와 좋아요 개수가 dict로 뜸이부분에서 likes_dict 를 쓰신 이유가 궁금합니다.그리고 if song.like_count != likes_dict.get(song.melon_uid)이부분은 당연히 같은거라서 if문이 실행이 될수가 없지 않나요? # 액션 def update_like_count(self, request, queryset): melon_uid_list = queryset.values_list("melon_uid", flat=True) likes_dict = get_likes_dict(melon_uid_list) # id와 좋아요 개수가 dict로 뜸 changed_count = 0 for song in queryset: song.like_count += 1 # 기존 코드 # if song.like_count != likes_dict.get(song.melon_uid): # song.like_count = likes_dict.get(song.melon_uid) # changed_count += 1 Song.objects.bulk_update( queryset, fields=["like_count"], ) self.message_user(request, message=f"{changed_count}개 곡의 좋아요 갱신 완료")
- 미해결파이썬/장고 웹서비스 개발 완벽 가이드 with 리액트 (장고 4.2 기준)
가상환경을 활성화했더니 (venv) (base) 이렇게 두개가 떠버리는데요
강의에서 보면 가상환경 activate하면 (venv) ~ 이렇게만 뜨는데 이전에 python -m venv venv해놨기 때문에 이번에는 source venv/bin/activate이것만 쳤거든요. 근데 (venv) (base) 이렇게 두개가 떠버리는데 확인좀 부탁드립니다 ㅠㅠ
- 미해결파이썬/장고 웹서비스 개발 완벽 가이드 with 리액트 (장고 4.2 기준)
class Song관련 app_label="melon"중 melon은 어디서 온것인가요
아래 코드에서 db_table="songs"는 테이블 이름에서 따온거 같은데 app_lable = "melon"은 어떻게 가져온 것인가요?? melon-20230906.sqlite3에서 앞글자만 가져와도 되는 것인가요??Song.objects 부분에서 Song에 선언된 objects가 없다고 에러가 나는데 왜 나는지와 해결방법 알수있을까요?`class Song(models.Model): id = models.AutoField(primary_key=True) 가수 = models.CharField(max_length=100) 곡명 = models.CharField(max_length=200) 곡일련번호 = models.IntegerField() 순위 = models.IntegerField() 앨범 = models.CharField(max_length=200) 좋아요 = models.IntegerField() 커버이미지_주소 = models.URLField() class Meta: db_table = "songs" app_label = "melon" def index(request): query = request.GET.get('query', '').strip() song_list = Song.objects.all() if query: song_list = song_list.filter( Q(곡명__icontains=query) | Q(가수__icontains=query) ) return render(request, template_name="index.html", context={"song_list": song_list, "query": query}) `
- 미해결파이썬/장고 웹서비스 개발 완벽 가이드 with 리액트 (장고 4.2 기준)
로드되지 않은 python 확장프로그램에 의존하기 때문에... 에러가 떠요
아래 에러가 뜨고 자동완성이 되지 않습니다.지웠다가 다시 삭제해도 마찬가지입니다.. ㅠㅠpylint, black formatter둘다 설치가 안되고있는거 같아요
- 미해결파이썬/장고 웹서비스 개발 완벽 가이드 with 리액트 (장고 4.2 기준)
vscode에서 sqlite오류가 발생합니다(sqlite could not register service,,)
열려있는 VSCode창은 이것 뿐입니다. 어떻게 해결해야 할까요..
- 미해결파이썬/장고 웹서비스 개발 완벽 가이드 with 리액트 (장고 4.2 기준)
1-6 css 프레임워크 질문입니다
동영상강의에서는 bootstraplink rel에 head 쪽에 있는데선생님의 수업노트에는 style쪽에 표기되어있는데 상관 없나요?!
- 해결됨파이썬/장고 웹서비스 개발 완벽 가이드 with 리액트 (장고 4.2 기준)
black 설치
안녕하세요00-06 black설치과정에 질문입니다.라이브러리에 추가하고 black 패키지 추가하려고 하니깐활성화가 안되어있습니다..어떻게 조치해야 될까요?
- 미해결파이썬/장고 웹서비스 개발 완벽 가이드 with 리액트 (장고 4.2 기준)
클래스질문입니다
1-5에서 8분10초대에서class meta에서db_tables=songs를 데이터베이스 안에서 어떤 경로로 봐야하나요?class song의 클래스라고했는데 어디를 가리키는건지를 잘 이해를 못했습니다 class song은 바로 옆에 사진처럼 바로 이해했는데class meta쪽에서 약간 어디로봐야할지 약간 헷갈립니다!..
- 미해결파이썬/장고 웹서비스 개발 완벽 가이드 with 리액트 (장고 4.2 기준)
1-4 데이터베이스연동에서..
질문하기 창피한데 그래도 할게요..1분16초쯤에 파이참 프로에서 더블클릭하라고하셧는데어딜 더블클릭하라는거죠? ㅠㅠㅠ 그리고 main02를 만들어서 멜론데이터 저파일을 만드는건가요?영상에서는 main02 안만들고해서...
- 미해결파이썬/장고 웹서비스 개발 완벽 가이드 with 리액트 (장고 4.2 기준)
webflow를 django와 함께 사용하는 선택은 어떠한가요?
안녕하세요~얼마 전에야 webflow에 관해 알게 되었는데, 장고와 함께 사용하면 웹사이트를 엄청 뚝딱 만들 수 있겠다는 제 기대감과는 달리 webflow+django 조합이 많이 고려되거나 사용되지 않는 듯하더라고요. webflow와 django으로 웹페이지 만드는 선택지를 어떻게 생각하시는지 궁금합니다.
- 미해결파이썬/장고 웹서비스 개발 완벽 가이드 with 리액트 (장고 4.2 기준)
질문있습니다
0-4장고 개발환경설정 하고있습니다 선생님 코드 복사해서 extensions.json 과 settings.json붙여넣기햇는데도 확장추천목록에 안떠서 그냥 일일히 다운받아서 했습니다그 이후 구동파일생성에서런 앤 디버그 안누르고 create a launce.json file을 눌렀는데선생님 화면처럼 django가 아예 안뜨는데 어디가 문제인지알수있을까요?
- 해결됨파이썬/장고 웹서비스 개발 완벽 가이드 with 리액트 (장고 4.2 기준)
어.. 기초 질문있습니다
00-03 코너에서 21분에서 깃 파일에 캐쉬가 좀있엇는데 제가 모르고 그냥 다 커밋시켰거든요 혹시 이거 다시 돌아가서 git rm로 제거를 하려고하는데 어떤 명령어를 통해 뒤돌아가기 하고 삭제하는지 알수있을까요? 구글링 검색하니 너무 많은정보가 나와 함부러 사용하기가 두렵습니다