inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

173만명의 커뮤니티!! 함께 토론해봐요.

새로운 개발환경 조합 Next.js + Supabase

미해결

클로드 코드 완벽 마스터: AI 개발 워크플로우 기초부터 실전까지

안녕하세요 오늘까지 전체수업 한번 쭉 들어봤습니다. 고민이 저는 파이썬 장고가 조금 익숙한데 .. 이번강의 에서 Next.js + Supabase조합은 사실 조금 생소합니다. 디버깅등 보다 완성도 있는 코딩을 하려면 AI에만 의존할 수 없는데 그럼 이조합이 가장 이상적인것인지.. 나중에 AI 분석에 들어가면 많은 분석기법을 파이썬에서 해야하는데 그걸 이 웹조합과 연계도 문제가 없는지 그리고 가장 중요한 질문은 지금 처음부터 next.js 나 supabase를 처음부터 공부하기에는 또 이번 수업에 나오는 다양한 기존 툴들 공부하려면 어디서 부터 어떻게 해야하는지요 .. 너무 기본적인 질문인가요

  • react
  • 인공지능(ai)
  • claude
  • next.js
  • supabase
  • 파이썬
  • 장고
  • 추가학습
dshwang 댓글 2 좋아요 0 조회수 134

안녕하세요 선생님. django 배포 문의 드립니다.

미해결

포트폴리오 초간단 배포하기

django 백엔드 관련으로 제작해놓고, 배포 정보를 찾다찾다 못찾겠어서 결제했는데, 백엔드 배포는 자바기반이더라구요..... 응용이 어려워서 그런데, django 배포는 어떻게 하면 될까요?

  • linux
  • github
  • nginx
  • django
  • 장고
  • python
  • 백엔드
최다니엘 댓글 2 좋아요 1 조회수 180

context에 있는 데이터가 html로 넘어가지 않습니다.

미해결

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

지금 context라는 변수를 첫 번째 if문에 한번 두 번째 if문에 한번 총 두 번 선언합니다. 각 if문 안에 있는 동작이 끝나는 순간 함수가 끝나기 때문에 서로 영향을 주지 않습니다. 그런데, 첫 번째 context에 있는 변수들은 html 페이지에 잘 뜨는데 두 번째 context에 있는 변수들이 html로 넘어가지 않습니다. 예를 들어, 두 번째 context에 있는 mape_val이 html에서 출력 되지 않습니다. 데코레이터 코드는 참고용으로 넣어두었습니다. views.py 부터 봐주시면 감사하겠습니다. <views.py> @navsDecorator @viewDecorator def csv_forecast(req, context): username = req.user if req.method == 'POST' and req.FILES.get('csvfile'): uploaded_file = req.FILES.get('csvfile') p_data = pd.read_csv(uploaded_file) p_data.reset_index(drop=True, inplace=True) columns_list = list(p_data.columns) columns_list = [column.lower() for column in columns_list] p_data.columns = columns_list # 디렉토리 없는 경우 생성해주는 python 내장 모듈 os.makedirs('media/csv', exist_ok=True) p_data.to_csv(f'media/csv/{username}.csv', index=False) start_date = p_data.loc[0, 'date'] len_date = int(len(p_data)*0.8) end_date = p_data.loc[len_date, 'date'] datas = [] for i in range(1, len(columns_list)): datas.append(columns_list[i]) MODEL_LIST = ['ARIMA', 'EMA5', 'LSTM'] context = {'datas' : datas, 'd' : p_data, 'columns_list' : columns_list, 'MODEL_LIST' : MODEL_LIST, 'start_date' : start_date, 'end_date' : end_date} # req.POST.get('')과 req.POST['']의 차이는 get을 적었을때는 키값이 존재하지 않는 경우 None값을 반환함 if req.POST.get('sendModel') and req.POST.get('sendPdata') and req.POST.get('sendRdata'): # js에서 ajax로 보낸 dict의 value값 send_pdata = req.POST.get('sendPdata') send_rdata = req.POST.get('sendRdata') send_model = req.POST.get('sendModel') cleaned_pdata = re.split(r'[\[\],"]', send_pdata) cleaned_rdata = re.split(r'[\[\],"]', send_rdata) cleaned_model = re.split(r'[\[\],"]', send_model) selected_pdata = [i for i in cleaned_pdata if len(i) >= 1] selected_rdata = [i for i in cleaned_rdata if len(i) >= 1] selected_model = [i for i in cleaned_model if len(i) >= 1] csv_data = pd.read_csv(f'media/csv/{username}.csv') mape_val, y_pred, y_test, test_date = model_main(csv_data, selected_pdata,selected_rdata, selected_model) print(mape_val) # print(type(y_pred)) # print(type(y_test)) # print(type(test_date)) fs = FileSystemStorage(location=f'media/csv/') fs.delete(f'{username}.csv') context = {'mape_val': mape_val,'y_pred' : y_pred, 'y_test' : y_test, 'test_date' : test_date } return req, context <csv_forecast.html> <body> {% include "nav.html" %} <div class="container"> <!-- css 깨지고 검색안되는거 forecast_scripts 문제였음 / 그 외 materialAutoComplete 추가 / views.py name get으로 가져오는 것 수정 --> <div class="card"> <div class="card-body"> {% if datas %} <h3>데이터와 모델 선택 후 하단에 저장버튼을 클릭해주세요.</h3> {% endif %} <br> <div class="sub-section" style="overflow: hidden;"> <form method="post" enctype="multipart/form-data"> <!-- form에서 받는 모든 정보를 모두 인코딩하지는 않는다는 뜻으로 이 부분을 설정하지 않으면 form에서 filename 정도만 받아오게 된다. 이 방식은 파일이나 이미지를 서버로 전송할 때 주로 사용한다. --> {% csrf_token %} <input type="file" name="csvfile" accept=".csv"> &nbsp; &nbsp; {% if datas %} <button type="submit" class="btn btn-primary">CSV 파일 업로드 완료</button> {% else %} <button type="submit" class="btn btn-secondary">CSV 파일 업로드 </button> {% endif %} </form> <br> <h3>학습구간 : {{start_date}} ~ {{end_date}}</h3> </div> </div> </div> <div class="col"> <h3>데이터 선택</h3> </div> <div class="card" > <div style="height: 400px; overflow: overlay"> <div class="card-body"> <!-- <button type="button" class="btn btn-primary" id="select_data">선택 데이터 저장</button> --> <div class="sub-section" style="overflow: hidden;"> <div class="sub-section01"> <table class="table table-hover table-centered table-nowrap" id="table_data"> <thead class="thead-dark"> <tr> <th></th> <th>예측 데이터</th> <th>근거 데이터</th> <th>딜레이</th> </tr> </thead> <tbody> {% for data in datas %} <tr> <td>{{data}}</td> <td><input type="radio" name ="pdata_checkbox"></td> <td><input type="checkbox" name ="rdata_checkbox"></td> <td>1</td> </tr> {% endfor %} </tbody> </table> </div> <div id="checked_data"></div> </div> </div> </div> </div> <div class="col"> <h3>모델 선택</h3> </div> <div class="card" > <div class="card-body"> <div class="sub-section" style="overflow: hidden;"> <div class="sub-section01"> <table class="table table-hover table-centered table-nowrap" id="table_model"> <thead class="thead-dark"> <tr> <th>선택</th> <th>예측 모델</th> </tr> </thead> <tbody> {% for model in MODEL_LIST %} <tr> <td><input type="radio" name ="model_checkbox"></td> <td>{{model}}</td> </tr> {% endfor %} </tbody> </table> </div> {% if datas %} <button type="button" class="btn btn-primary" id="select_model">선택 데이터와 모델 저장</button> {% endif %} <div id="checked_model"></div> </div> </div> </div> <div class="col"> <h3>예측 결과</h3> </div> <div class="card"> <div class="card-body"> <div class="sub-section" style="overflow: hidden;"> <h3>{{mape_val}}</h3> </div> </div> </div> </div> <decorator.py> def viewDecorator(func): def wrapper(*args, **kwargs): req = args[0] context = {key: val for key, val in req.GET.dict().items()} kwargs['context'] = context req, context = func(*args, **kwargs) return TemplateResponse(req, f'{func.__name__}.html', context=context) return wrapper def navsDecorator(function): @functools.wraps(function) def wrapper(*args, **kwargs): template = function(*args, **kwargs) try: navs = [ # getNav('main', '퀀트평가'), # getNav('getGraphByCode', '시즈널리티'), getNav('csv_forecast', '원자재 예측'), # getNav('house', '부동산 예측'), # getNav('similarData', '유사차트'), ] template.context_data['navs'] = navs return template.render() except Exception as e: print(e) return template return wrapper

  • 장고
  • python
  • django
  • react
  • html
  • django
  • context
  • docker
박정환 댓글 3 좋아요 0 조회수 1250

pip freeze > requirements.txt 실행시 결과값이 다른 현상

미해결

작정하고 장고! Django로 Pinterest 따라만들기 : 바닥부터 배포까지

결과 값이 아래와 같이 나오지 않고, 다른 결과가 나와요 beautifulsoup4==4.11.1 Django==3.1.3 django-bootstrap4==22.1 django-environ==0.9.0 environ==1.0 importlib-metadata==2.0.0 Pillow==9.1.1 pytz==2020.4 soupsieve==2.3.2.post1 sqlparse==0.4.1 zipp==3.4.0 저는 결과 값이 아래 처럼 나오는데 왜 그런건가요? 아래와 같이 나오니까 도커 자동설치할때 이부분에서 오류가 나서 사용할 수가 없어요 물론 수동으로 버전 입력하고 바꿔주면 사용가능한데, 애초에 프리즈 커멘드 사용시에 제대로 안되는 이유가 궁금 합니다. asgiref @ file:///tmp/build/80754af9/asgiref_1605055780383/work beautifulsoup4==4.11.1 certifi @ file:///private/var/folders/sy/f16zz6x50xz3113nwtb9bvq00000gp/T/abs_83242e7e-f82d-4a71-8ef2-9d71d212d249gu_wxmeq/croots/recipe/certifi_1655968827803/work/certifi Django @ file:///tmp/build/80754af9/django_1617740316746/work django-bootstrap4==22.1 django-environ==0.9.0 gunicorn==20.1.0 Pillow==9.1.1 psycopg2 @ file:///Users/builder/ci_310/psycopg2_1642535040511/work pytz @ file:///private/var/folders/sy/f16zz6x50xz3113nwtb9bvq00000gp/T/abs_1caf090c-01b6-4973-adac-d2eb884a674e7zonb9eb/croots/recipe/pytz_1654762641285/work soupsieve==2.3.2.post1 sqlparse @ file:///tmp/build/80754af9/sqlparse_1602184451250/work typing_extensions @ file:///opt/conda/conda-bld/typing_extensions_1647553014482/work

  • 장고
  • 프리즈
  • docker
  • python
  • django
김형 댓글 1 좋아요 0 조회수 993

AWS 배포 Nginx 502 Bad Gateway 오류

미해결

에러로그 sudo vi /etc/nginx/nginx.conf sudo vi /etc/nginx/sites-enabled/default 서버를 구동하고 AWS Public IP로 접속하려고 해도 접속이 안됩니다 ,,, 어떻게 해야할까요

  • aws
  • django
  • nginx
  • 에러
  • error
  • 오류
  • 장고
  • 배포
  • 502
박정환 댓글 0 좋아요 0 조회수 650

summernote 구현시 파일 저장 장소 수정

미해결

안녕하세요? djaono 프레임워크에 썸머노트를 이용하여 글쓰기(이미지 포함)를 구현중에 있습니다. 보통 summernote에 글과 이미지를 삽입하여 저장하면 다음과 같이 media폴더 하위에 이미지가 저장이 됩니다. 예) media/django-summernote/2022-02-15/test.jpg 위의 기본 저장장소를 다음과 같이 변경하고 싶은데 방법을 모르겠습니다. media/사용자아이디/django-summernote/2022-02-15/test.jpg 또는 media/사용자아이디/2022-02-15/test.jpg 물론 settings.py 에 미디어 경로를 MEDIA_ROOT = os.path.join(BASE_DIR, '_media/사용자아이디') 와 같이 수정하면 가능은 합니다. 사용자아이디를 하드코딩하지 않고 로그인한 사용자의 아이디(세션아이디)를 이용하여 동적으로 생성하고 싶습니다. 구현방법에 경험이 있으시거나 알고 계시분 있으시면 답변 부탁드립니다. 감사합니다.

  • 썸머노트
  • summernote
  • django
  • 장고
  • 파이썬
  • media
  • 미디어
  • 미디어파일
goni98 댓글 0 좋아요 0 조회수 413

윈도우에서 토큰값 입력하기

미해결

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

(django-with-react-rev3) C:\Dev\dev2\askcompany>TOKEN = c84a625c9345fbed62c9771afaca3cbf1ed65b4a 'TOKEN'은(는) 내부 또는 외부 명령, 실행할 수 있는 프로그램, 또는 배치 파일이 아닙니다. 이런 오류는 어떻게 해결해야 하나요?

  • 장고
  • python
  • react
  • django
  • docker
준영 댓글 2 좋아요 0 조회수 688

커스텀 데코레이터 질문(decorators.py)

미해결

작정하고 장고! Django로 Pinterest 따라만들기 : 바닥부터 배포까지

decorators.py 에서 decorator를 커스텀 할 때 마지막의 return decorated는 정해 decorator 함수를 생성할 때 정해져 있는 규칙인가요?? def account_ownership_required ( func ) : def decorated ( request , *args , **kwargs ) : user = User.objects. get ( pk = kwargs [ "pk" ]) if not user == request .user : return HttpResponseForbidden () return func ( request , * args , ** kwargs ) return decorated

  • 장고
  • django
  • 작정하고장고
  • docker
  • python
kiwon Jun 댓글 1 좋아요 0 조회수 297

IsAuthorOrReadOnly 퍼미션이 작동이 안되네요

미해결

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

views.py class PostViewSet ( ModelViewSet ): queryset = Post . objects . all () serializer_class = PostSerializer permission_classess = [ IsAuthenticated , IsAuthorOrReadOnly ] # login_required permissions.py class IsAuthorOrReadOnly ( permissions . BasePermission ): #인증이 되어야만 목록조회/포스팅 등록 허용 def has_permission ( self , request , view ): return request .user and request .user_authenticated # 작성자 아니면 조회만 가능, 작성자는 다른 작업도 가능 def has_object_permission ( self , request , view , obj ): if request .method in permissions . SAFE_METHODS : # SAFE_METHOD는 GET, HEAD 등 조회용 안전한 메소드 return True if request .method == 'DELETE' : return request .user.is_superuser return obj .author == request .user 다른 유저가 쓴 글도 PATCH 메소드로 수정이 가능한데.. 코드상으론 잘못된부분이 없어보이네요 ㅠ

  • 장고
  • python
  • react
  • django
  • docker
준영 댓글 1 좋아요 0 조회수 262

커스텀 PATCH 오류

미해결

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

http PATCH http://localhost:8000/post/3/set_public 를 터미널에 쳤을때 강사님처럼 객체가 나오지 않고 아래처럼 엄청난 html파일이 터미널에 찍히네요; http PATCH http://localhost:8000/post/2/set_public 로 했을때는 데이터가 수정되었는데 3으로 하니까 데이터가 수정이 안된모습입니다.. 무엇이 문제일까요 ㅠㅜ <td>TEMP</td> <td class="code"><pre>&#x27;C:\\Users\\Garam\\AppData\\Local\\Temp&#x27;</pre></td> </tr> <tr> <td>TERM_PROGRAM</td> <td class="code"><pre>&#x27;vscode&#x27;</pre></td> </tr> <tr> <td>TERM_PROGRAM_VERSION</td> <td class="code"><pre>&#x27;1.64.1&#x27;</pre></td> </tr> <tr> <td>TMP</td> <td class="code"><pre>&#x27;C:\\Users\\Garam\\AppData\\Local\\Temp&#x27;</pre></td> </tr> <tr> <td>USERDOMAIN</td> <td class="code"><pre>&#x27;DESKTOP-DJ9Q9OG&#x27;</pre></td> </tr> <tr> <td>USERDOMAIN_ROAMINGPROFILE</td> <td class="code"><pre>&#x27;DESKTOP-DJ9Q9OG&#x27;</pre></td> </tr> <tr> <td>USERNAME</td> <td class="code"><pre>&#x27;Garam&#x27;</pre></td> </tr> <tr> <td>USERPROFILE</td> <td class="code"><pre>&#x27;C:\\Users\\Garam&#x27;</pre></td> </tr> <tr> <td>VSCODE_GIT_ASKPASS_EXTRA_ARGS</td> <td class="code"><pre>&#x27;--ms-enable-electron-run-as-node&#x27;</pre></td> </tr> <tr> <td>VSCODE_GIT_ASKPASS_MAIN</td> <td class="code"><pre>(&#x27;c:\\Users\\Garam\\AppData\\Local\\Programs\\Microsoft VS &#x27; &#x27;Code\\resources\\app\\extensions\\git\\dist\\askpass-main.js&#x27;)</pre></td> </tr> <tr> <td>VSCODE_GIT_ASKPASS_NODE</td> <td class="code"><pre>&#x27;C:\\Users\\Garam\\AppData\\Local\\Programs\\Microsoft VS Code\\Code.exe&#x27;</pre></td> </tr> <tr> <td>VSCODE_GIT_IPC_HANDLE</td> <td class="code"><pre>&#x27;\\\\.\\pipe\\vscode-git-cf22388980-sock&#x27;</pre></td> </tr> <tr> <td>WINDIR</td> <td class="code"><pre>&#x27;C:\\WINDOWS&#x27;</pre></td> </tr> <tr> <td>wsgi.errors</td> <td class="code"><pre>&lt;_io.TextIOWrapper name=&#x27;&lt;stderr&gt;&#x27; mode=&#x27;w&#x27; encoding=&#x27;utf-8&#x27;&gt;</pre></td> </tr> <tr> <td>wsgi.file_wrapper</td> <td class="code"><pre>&#x27;&#x27;</pre></td> </tr> <tr> <td>wsgi.input</td> <td class="code"><pre>&lt;django.core.handlers.wsgi.LimitedStream object at 0x0000016394592AC0&gt;</pre></td> </tr> <tr> <td>wsgi.multiprocess</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>wsgi.multithread</td> <td class="code"><pre>True</pre></td> </tr> <tr> <td>wsgi.run_once</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>wsgi.url_scheme</td> <td class="code"><pre>&#x27;http&#x27;</pre></td> </tr> <tr> <td>wsgi.version</td> <td class="code"><pre>(1, 0)</pre></td> </tr> </tbody> </table> <h3 id="settings-info">Settings</h3> <h4>Using settings module <code>askcompany.settings</code></h4> <table class="req"> <thead> <tr> <th>Setting</th> <th>Value</th> </tr> </thead> <tbody> <tr> <td>ABSOLUTE_URL_OVERRIDES</td> <td class="code"><pre>{}</pre></td> </tr> <tr> <td>ADMINS</td> <td class="code"><pre>[]</pre></td> </tr> <tr> <td>ALLOWED_HOSTS</td> <td class="code"><pre>[]</pre></td> </tr> <tr> <td>APPEND_SLASH</td> <td class="code"><pre>True</pre></td> </tr> <tr> <td>AUTHENTICATION_BACKENDS</td> <td class="code"><pre>[&#x27;django.contrib.auth.backends.ModelBackend&#x27;]</pre></td> </tr> <tr> <td>AUTH_PASSWORD_VALIDATORS</td> <td class="code"><pre>&#x27;********************&#x27;</pre></td> </tr> <tr> <td>AUTH_USER_MODEL</td> <td class="code"><pre>&#x27;auth.User&#x27;</pre></td> </tr> <tr> <td>BASE_DIR</td> <td class="code"><pre>&#x27;C:\\Dev\\dev2\\askcompany&#x27;</pre></td> </tr> <tr> <td>CACHES</td> <td class="code"><pre>{&#x27;default&#x27;: {&#x27;BACKEND&#x27;: &#x27;django.core.cache.backends.locmem.LocMemCache&#x27;}}</pre></td> </tr> <tr> <td>CACHE_MIDDLEWARE_ALIAS</td> <td class="code"><pre>&#x27;default&#x27;</pre></td> </tr> <tr> <td>CACHE_MIDDLEWARE_KEY_PREFIX</td> <td class="code"><pre>&#x27;********************&#x27;</pre></td> </tr> <tr> <td>CACHE_MIDDLEWARE_SECONDS</td> <td class="code"><pre>600</pre></td> </tr> <tr> <td>CSRF_COOKIE_AGE</td> <td class="code"><pre>31449600</pre></td> </tr> <tr> <td>CSRF_COOKIE_DOMAIN</td> <td class="code"><pre>None</pre></td> </tr> <tr> <td>CSRF_COOKIE_HTTPONLY</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>CSRF_COOKIE_NAME</td> <td class="code"><pre>&#x27;csrftoken&#x27;</pre></td> </tr> <tr> <td>CSRF_COOKIE_PATH</td> <td class="code"><pre>&#x27;/&#x27;</pre></td> </tr> <tr> <td>CSRF_COOKIE_SAMESITE</td> <td class="code"><pre>&#x27;Lax&#x27;</pre></td> </tr> <tr> <td>CSRF_COOKIE_SECURE</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>CSRF_FAILURE_VIEW</td> <td class="code"><pre>&#x27;django.views.csrf.csrf_failure&#x27;</pre></td> </tr> <tr> <td>CSRF_HEADER_NAME</td> <td class="code"><pre>&#x27;HTTP_X_CSRFTOKEN&#x27;</pre></td> </tr> <tr> <td>CSRF_TRUSTED_ORIGINS</td> <td class="code"><pre>[]</pre></td> </tr> <tr> <td>CSRF_USE_SESSIONS</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>DATABASES</td> <td class="code"><pre>{&#x27;default&#x27;: {&#x27;ATOMIC_REQUESTS&#x27;: False, &#x27;AUTOCOMMIT&#x27;: True, &#x27;CONN_MAX_AGE&#x27;: 0, &#x27;ENGINE&#x27;: &#x27;django.db.backends.sqlite3&#x27;, &#x27;HOST&#x27;: &#x27;&#x27;, &#x27;NAME&#x27;: &#x27;C:\\Dev\\dev2\\askcompany\\db.sqlite3&#x27;, &#x27;OPTIONS&#x27;: {}, &#x27;PASSWORD&#x27;: &#x27;********************&#x27;, &#x27;PORT&#x27;: &#x27;&#x27;, &#x27;TEST&#x27;: {&#x27;CHARSET&#x27;: None, &#x27;COLLATION&#x27;: None, &#x27;MIRROR&#x27;: None, &#x27;NAME&#x27;: None}, &#x27;TIME_ZONE&#x27;: None, &#x27;USER&#x27;: &#x27;&#x27;}}</pre></td> </tr> <tr> <td>DATABASE_ROUTERS</td> <td class="code"><pre>[]</pre></td> </tr> <tr> <td>DATA_UPLOAD_MAX_MEMORY_SIZE</td> <td class="code"><pre>2621440</pre></td> </tr> <tr> <td>DATA_UPLOAD_MAX_NUMBER_FIELDS</td> <td class="code"><pre>1000</pre></td> </tr> <tr> <td>DATETIME_FORMAT</td> <td class="code"><pre>&#x27;N j, Y, P&#x27;</pre></td> </tr> <tr> <td>DATETIME_INPUT_FORMATS</td> <td class="code"><pre>[&#x27;%Y-%m-%d %H:%M:%S&#x27;, &#x27;%Y-%m-%d %H:%M:%S.%f&#x27;, &#x27;%Y-%m-%d %H:%M&#x27;, &#x27;%Y-%m-%d&#x27;, &#x27;%m/%d/%Y %H:%M:%S&#x27;, &#x27;%m/%d/%Y %H:%M:%S.%f&#x27;, &#x27;%m/%d/%Y %H:%M&#x27;, &#x27;%m/%d/%Y&#x27;, &#x27;%m/%d/%y %H:%M:%S&#x27;, &#x27;%m/%d/%y %H:%M:%S.%f&#x27;, &#x27;%m/%d/%y %H:%M&#x27;, &#x27;%m/%d/%y&#x27;]</pre></td> </tr> <tr> <td>DATE_FORMAT</td> <td class="code"><pre>&#x27;N j, Y&#x27;</pre></td> </tr> <tr> <td>DATE_INPUT_FORMATS</td> <td class="code"><pre>[&#x27;%Y-%m-%d&#x27;, &#x27;%m/%d/%Y&#x27;, &#x27;%m/%d/%y&#x27;, &#x27;%b %d %Y&#x27;, &#x27;%b %d, %Y&#x27;, &#x27;%d %b %Y&#x27;, &#x27;%d %b, %Y&#x27;, &#x27;%B %d %Y&#x27;, &#x27;%B %d, %Y&#x27;, &#x27;%d %B %Y&#x27;, &#x27;%d %B, %Y&#x27;]</pre></td> </tr> <tr> <td>DEBUG</td> <td class="code"><pre>True</pre></td> </tr> <tr> <td>DEBUG_PROPAGATE_EXCEPTIONS</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>DECIMAL_SEPARATOR</td> <td class="code"><pre>&#x27;.&#x27;</pre></td> </tr> <tr> <td>DEFAULT_CHARSET</td> <td class="code"><pre>&#x27;utf-8&#x27;</pre></td> </tr> <tr> <td>DEFAULT_EXCEPTION_REPORTER_FILTER</td> <td class="code"><pre>&#x27;django.views.debug.SafeExceptionReporterFilter&#x27;</pre></td> </tr> <tr> <td>DEFAULT_FILE_STORAGE</td> <td class="code"><pre>&#x27;django.core.files.storage.FileSystemStorage&#x27;</pre></td> </tr> <tr> <td>DEFAULT_FROM_EMAIL</td> <td class="code"><pre>&#x27;webmaster@localhost&#x27;</pre></td> </tr> <tr> <td>DEFAULT_INDEX_TABLESPACE</td> <td class="code"><pre>&#x27;&#x27;</pre></td> </tr> <tr> <td>DEFAULT_TABLESPACE</td> <td class="code"><pre>&#x27;&#x27;</pre></td> </tr> <tr> <td>DISALLOWED_USER_AGENTS</td> <td class="code"><pre>[]</pre></td> </tr> <tr> <td>EMAIL_BACKEND</td> <td class="code"><pre>&#x27;django.core.mail.backends.smtp.EmailBackend&#x27;</pre></td> </tr> <tr> <td>EMAIL_HOST</td> <td class="code"><pre>&#x27;localhost&#x27;</pre></td> </tr> <tr> <td>EMAIL_HOST_PASSWORD</td> <td class="code"><pre>&#x27;********************&#x27;</pre></td> </tr> <tr> <td>EMAIL_HOST_USER</td> <td class="code"><pre>&#x27;&#x27;</pre></td> </tr> <tr> <td>EMAIL_PORT</td> <td class="code"><pre>25</pre></td> </tr> <tr> <td>EMAIL_SSL_CERTFILE</td> <td class="code"><pre>None</pre></td> </tr> <tr> <td>EMAIL_SSL_KEYFILE</td> <td class="code"><pre>&#x27;********************&#x27;</pre></td> </tr> <tr> <td>EMAIL_SUBJECT_PREFIX</td> <td class="code"><pre>&#x27;[Django] &#x27;</pre></td> </tr> <tr> <td>EMAIL_TIMEOUT</td> <td class="code"><pre>None</pre></td> </tr> <tr> <td>EMAIL_USE_LOCALTIME</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>EMAIL_USE_SSL</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>EMAIL_USE_TLS</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>FILE_CHARSET</td> <td class="code"><pre>&#x27;utf-8&#x27;</pre></td> </tr> <tr> <td>FILE_UPLOAD_DIRECTORY_PERMISSIONS</td> <td class="code"><pre>None</pre></td> </tr> <tr> <td>FILE_UPLOAD_HANDLERS</td> <td class="code"><pre>[&#x27;django.core.files.uploadhandler.MemoryFileUploadHandler&#x27;, &#x27;django.core.files.uploadhandler.TemporaryFileUploadHandler&#x27;]</pre></td> </tr> <tr> <td>FILE_UPLOAD_MAX_MEMORY_SIZE</td> <td class="code"><pre>2621440</pre></td> </tr> <tr> <td>FILE_UPLOAD_PERMISSIONS</td> <td class="code"><pre>420</pre></td> </tr> <tr> <td>FILE_UPLOAD_TEMP_DIR</td> <td class="code"><pre>None</pre></td> </tr> <tr> <td>FIRST_DAY_OF_WEEK</td> <td class="code"><pre>0</pre></td> </tr> <tr> <td>FIXTURE_DIRS</td> <td class="code"><pre>[]</pre></td> </tr> <tr> <td>FORCE_SCRIPT_NAME</td> <td class="code"><pre>None</pre></td> </tr> <tr> <td>FORMAT_MODULE_PATH</td> <td class="code"><pre>None</pre></td> </tr> <tr> <td>FORM_RENDERER</td> <td class="code"><pre>&#x27;django.forms.renderers.DjangoTemplates&#x27;</pre></td> </tr> <tr> <td>IGNORABLE_404_URLS</td> <td class="code"><pre>[]</pre></td> </tr> <tr> <td>INSTALLED_APPS</td> <td class="code"><pre>[&#x27;django.contrib.admin&#x27;, &#x27;django.contrib.auth&#x27;, &#x27;django.contrib.contenttypes&#x27;, &#x27;django.contrib.sessions&#x27;, &#x27;django.contrib.messages&#x27;, &#x27;django.contrib.staticfiles&#x27;, &#x27;rest_framework&#x27;, &#x27;instagram&#x27;]</pre></td> </tr> <tr> <td>INTERNAL_IPS</td> <td class="code"><pre>[]</pre></td> </tr> <tr> <td>LANGUAGES</td> <td class="code"><pre>[(&#x27;af&#x27;, &#x27;Afrikaans&#x27;), (&#x27;ar&#x27;, &#x27;Arabic&#x27;), (&#x27;ast&#x27;, &#x27;Asturian&#x27;), (&#x27;az&#x27;, &#x27;Azerbaijani&#x27;), (&#x27;bg&#x27;, &#x27;Bulgarian&#x27;), (&#x27;be&#x27;, &#x27;Belarusian&#x27;), (&#x27;bn&#x27;, &#x27;Bengali&#x27;), (&#x27;br&#x27;, &#x27;Breton&#x27;), (&#x27;bs&#x27;, &#x27;Bosnian&#x27;), (&#x27;ca&#x27;, &#x27;Catalan&#x27;), (&#x27;cs&#x27;, &#x27;Czech&#x27;), (&#x27;cy&#x27;, &#x27;Welsh&#x27;), (&#x27;da&#x27;, &#x27;Danish&#x27;), (&#x27;de&#x27;, &#x27;German&#x27;), (&#x27;dsb&#x27;, &#x27;Lower Sorbian&#x27;), (&#x27;el&#x27;, &#x27;Greek&#x27;), (&#x27;en&#x27;, &#x27;English&#x27;), (&#x27;en-au&#x27;, &#x27;Australian English&#x27;), (&#x27;en-gb&#x27;, &#x27;British English&#x27;), (&#x27;eo&#x27;, &#x27;Esperanto&#x27;), (&#x27;es&#x27;, &#x27;Spanish&#x27;), (&#x27;es-ar&#x27;, &#x27;Argentinian Spanish&#x27;), (&#x27;es-co&#x27;, &#x27;Colombian Spanish&#x27;), (&#x27;es-mx&#x27;, &#x27;Mexican Spanish&#x27;), (&#x27;es-ni&#x27;, &#x27;Nicaraguan Spanish&#x27;), (&#x27;es-ve&#x27;, &#x27;Venezuelan Spanish&#x27;), (&#x27;et&#x27;, &#x27;Estonian&#x27;), (&#x27;eu&#x27;, &#x27;Basque&#x27;), (&#x27;fa&#x27;, &#x27;Persian&#x27;), (&#x27;fi&#x27;, &#x27;Finnish&#x27;), (&#x27;fr&#x27;, &#x27;French&#x27;), (&#x27;fy&#x27;, &#x27;Frisian&#x27;), (&#x27;ga&#x27;, &#x27;Irish&#x27;), (&#x27;gd&#x27;, &#x27;Scottish Gaelic&#x27;), (&#x27;gl&#x27;, &#x27;Galician&#x27;), (&#x27;he&#x27;, &#x27;Hebrew&#x27;), (&#x27;hi&#x27;, &#x27;Hindi&#x27;), (&#x27;hr&#x27;, &#x27;Croatian&#x27;), (&#x27;hsb&#x27;, &#x27;Upper Sorbian&#x27;), (&#x27;hu&#x27;, &#x27;Hungarian&#x27;), (&#x27;hy&#x27;, &#x27;Armenian&#x27;), (&#x27;ia&#x27;, &#x27;Interlingua&#x27;), (&#x27;id&#x27;, &#x27;Indonesian&#x27;), (&#x27;io&#x27;, &#x27;Ido&#x27;), (&#x27;is&#x27;, &#x27;Icelandic&#x27;), (&#x27;it&#x27;, &#x27;Italian&#x27;), (&#x27;ja&#x27;, &#x27;Japanese&#x27;), (&#x27;ka&#x27;, &#x27;Georgian&#x27;), (&#x27;kab&#x27;, &#x27;Kabyle&#x27;), (&#x27;kk&#x27;, &#x27;Kazakh&#x27;), (&#x27;km&#x27;, &#x27;Khmer&#x27;), (&#x27;kn&#x27;, &#x27;Kannada&#x27;), (&#x27;ko&#x27;, &#x27;Korean&#x27;), (&#x27;lb&#x27;, &#x27;Luxembourgish&#x27;), (&#x27;lt&#x27;, &#x27;Lithuanian&#x27;), (&#x27;lv&#x27;, &#x27;Latvian&#x27;), (&#x27;mk&#x27;, &#x27;Macedonian&#x27;), (&#x27;ml&#x27;, &#x27;Malayalam&#x27;), (&#x27;mn&#x27;, &#x27;Mongolian&#x27;), (&#x27;mr&#x27;, &#x27;Marathi&#x27;), (&#x27;my&#x27;, &#x27;Burmese&#x27;), (&#x27;nb&#x27;, &#x27;Norwegian Bokm&aring;l&#x27;), (&#x27;ne&#x27;, &#x27;Nepali&#x27;), (&#x27;nl&#x27;, &#x27;Dutch&#x27;), (&#x27;nn&#x27;, &#x27;Norwegian Nynorsk&#x27;), (&#x27;os&#x27;, &#x27;Ossetic&#x27;), (&#x27;pa&#x27;, &#x27;Punjabi&#x27;), (&#x27;pl&#x27;, &#x27;Polish&#x27;), (&#x27;pt&#x27;, &#x27;Portuguese&#x27;), (&#x27;pt-br&#x27;, &#x27;Brazilian Portuguese&#x27;), (&#x27;ro&#x27;, &#x27;Romanian&#x27;), (&#x27;ru&#x27;, &#x27;Russian&#x27;), (&#x27;sk&#x27;, &#x27;Slovak&#x27;), (&#x27;sl&#x27;, &#x27;Slovenian&#x27;), (&#x27;sq&#x27;, &#x27;Albanian&#x27;), (&#x27;sr&#x27;, &#x27;Serbian&#x27;), (&#x27;sr-latn&#x27;, &#x27;Serbian Latin&#x27;), (&#x27;sv&#x27;, &#x27;Swedish&#x27;), (&#x27;sw&#x27;, &#x27;Swahili&#x27;), (&#x27;ta&#x27;, &#x27;Tamil&#x27;), (&#x27;te&#x27;, &#x27;Telugu&#x27;), (&#x27;th&#x27;, &#x27;Thai&#x27;), (&#x27;tr&#x27;, &#x27;Turkish&#x27;), (&#x27;tt&#x27;, &#x27;Tatar&#x27;), (&#x27;udm&#x27;, &#x27;Udmurt&#x27;), (&#x27;uk&#x27;, &#x27;Ukrainian&#x27;), (&#x27;ur&#x27;, &#x27;Urdu&#x27;), (&#x27;uz&#x27;, &#x27;Uzbek&#x27;), (&#x27;vi&#x27;, &#x27;Vietnamese&#x27;), (&#x27;zh-hans&#x27;, &#x27;Simplified Chinese&#x27;), (&#x27;zh-hant&#x27;, &#x27;Traditional Chinese&#x27;)]</pre></td> </tr> <tr> <td>LANGUAGES_BIDI</td> <td class="code"><pre>[&#x27;he&#x27;, &#x27;ar&#x27;, &#x27;fa&#x27;, &#x27;ur&#x27;]</pre></td> </tr> <tr> <td>LANGUAGE_CODE</td> <td class="code"><pre>&#x27;en-us&#x27;</pre></td> </tr> <tr> <td>LANGUAGE_COOKIE_AGE</td> <td class="code"><pre>None</pre></td> </tr> <tr> <td>LANGUAGE_COOKIE_DOMAIN</td> <td class="code"><pre>None</pre></td> </tr> <tr> <td>LANGUAGE_COOKIE_HTTPONLY</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>LANGUAGE_COOKIE_NAME</td> <td class="code"><pre>&#x27;django_language&#x27;</pre></td> </tr> <tr> <td>LANGUAGE_COOKIE_PATH</td> <td class="code"><pre>&#x27;/&#x27;</pre></td> </tr> <tr> <td>LANGUAGE_COOKIE_SAMESITE</td> <td class="code"><pre>None</pre></td> </tr> <tr> <td>LANGUAGE_COOKIE_SECURE</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>LOCALE_PATHS</td> <td class="code"><pre>[]</pre></td> </tr> <tr> <td>LOGGING</td> <td class="code"><pre>{}</pre></td> </tr> <tr> <td>LOGGING_CONFIG</td> <td class="code"><pre>&#x27;logging.config.dictConfig&#x27;</pre></td> </tr> <tr> <td>LOGIN_REDIRECT_URL</td> <td class="code"><pre>&#x27;/accounts/profile/&#x27;</pre></td> </tr> <tr> <td>LOGIN_URL</td> <td class="code"><pre>&#x27;/accounts/login/&#x27;</pre></td> </tr> <tr> <td>LOGOUT_REDIRECT_URL</td> <td class="code"><pre>None</pre></td> </tr> <tr> <td>MANAGERS</td> <td class="code"><pre>[]</pre></td> </tr> <tr> <td>MEDIA_ROOT</td> <td class="code"><pre>&#x27;&#x27;</pre></td> </tr> <tr> <td>MEDIA_URL</td> <td class="code"><pre>&#x27;&#x27;</pre></td> </tr> <tr> <td>MESSAGE_STORAGE</td> <td class="code"><pre>&#x27;django.contrib.messages.storage.fallback.FallbackStorage&#x27;</pre></td> </tr> <tr> <td>MIDDLEWARE</td> <td class="code"><pre>[&#x27;django.middleware.security.SecurityMiddleware&#x27;, &#x27;django.contrib.sessions.middleware.SessionMiddleware&#x27;, &#x27;django.middleware.common.CommonMiddleware&#x27;, &#x27;django.middleware.csrf.CsrfViewMiddleware&#x27;, &#x27;django.contrib.auth.middleware.AuthenticationMiddleware&#x27;, &#x27;django.contrib.messages.middleware.MessageMiddleware&#x27;, &#x27;django.middleware.clickjacking.XFrameOptionsMiddleware&#x27;]</pre></td> </tr> <tr> <td>MIGRATION_MODULES</td> <td class="code"><pre>{}</pre></td> </tr> <tr> <td>MONTH_DAY_FORMAT</td> <td class="code"><pre>&#x27;F j&#x27;</pre></td> </tr> <tr> <td>NUMBER_GROUPING</td> <td class="code"><pre>0</pre></td> </tr> <tr> <td>PASSWORD_HASHERS</td> <td class="code"><pre>&#x27;********************&#x27;</pre></td> </tr> <tr> <td>PASSWORD_RESET_TIMEOUT_DAYS</td> <td class="code"><pre>&#x27;********************&#x27;</pre></td> </tr> <tr> <td>PREPEND_WWW</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>ROOT_URLCONF</td> <td class="code"><pre>&#x27;askcompany.urls&#x27;</pre></td> </tr> <tr> <td>SECRET_KEY</td> <td class="code"><pre>&#x27;********************&#x27;</pre></td> </tr> <tr> <td>SECURE_BROWSER_XSS_FILTER</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>SECURE_CONTENT_TYPE_NOSNIFF</td> <td class="code"><pre>True</pre></td> </tr> <tr> <td>SECURE_HSTS_INCLUDE_SUBDOMAINS</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>SECURE_HSTS_PRELOAD</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>SECURE_HSTS_SECONDS</td> <td class="code"><pre>0</pre></td> </tr> <tr> <td>SECURE_PROXY_SSL_HEADER</td> <td class="code"><pre>None</pre></td> </tr> <tr> <td>SECURE_REDIRECT_EXEMPT</td> <td class="code"><pre>[]</pre></td> </tr> <tr> <td>SECURE_REFERRER_POLICY</td> <td class="code"><pre>None</pre></td> </tr> <tr> <td>SECURE_SSL_HOST</td> <td class="code"><pre>None</pre></td> </tr> <tr> <td>SECURE_SSL_REDIRECT</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>SERVER_EMAIL</td> <td class="code"><pre>&#x27;root@localhost&#x27;</pre></td> </tr> <tr> <td>SESSION_CACHE_ALIAS</td> <td class="code"><pre>&#x27;default&#x27;</pre></td> </tr> <tr> <td>SESSION_COOKIE_AGE</td> <td class="code"><pre>1209600</pre></td> </tr> <tr> <td>SESSION_COOKIE_DOMAIN</td> <td class="code"><pre>None</pre></td> </tr> <tr> <td>SESSION_COOKIE_HTTPONLY</td> <td class="code"><pre>True</pre></td> </tr> <tr> <td>SESSION_COOKIE_NAME</td> <td class="code"><pre>&#x27;sessionid&#x27;</pre></td> </tr> <tr> <td>SESSION_COOKIE_PATH</td> <td class="code"><pre>&#x27;/&#x27;</pre></td> </tr> <tr> <td>SESSION_COOKIE_SAMESITE</td> <td class="code"><pre>&#x27;Lax&#x27;</pre></td> </tr> <tr> <td>SESSION_COOKIE_SECURE</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>SESSION_ENGINE</td> <td class="code"><pre>&#x27;django.contrib.sessions.backends.db&#x27;</pre></td> </tr> <tr> <td>SESSION_EXPIRE_AT_BROWSER_CLOSE</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>SESSION_FILE_PATH</td> <td class="code"><pre>None</pre></td> </tr> <tr> <td>SESSION_SAVE_EVERY_REQUEST</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>SESSION_SERIALIZER</td> <td class="code"><pre>&#x27;django.contrib.sessions.serializers.JSONSerializer&#x27;</pre></td> </tr> <tr> <td>SETTINGS_MODULE</td> <td class="code"><pre>&#x27;askcompany.settings&#x27;</pre></td> </tr> <tr> <td>SHORT_DATETIME_FORMAT</td> <td class="code"><pre>&#x27;m/d/Y P&#x27;</pre></td> </tr> <tr> <td>SHORT_DATE_FORMAT</td> <td class="code"><pre>&#x27;m/d/Y&#x27;</pre></td> </tr> <tr> <td>SIGNING_BACKEND</td> <td class="code"><pre>&#x27;django.core.signing.TimestampSigner&#x27;</pre></td> </tr> <tr> <td>SILENCED_SYSTEM_CHECKS</td> <td class="code"><pre>[]</pre></td> </tr> <tr> <td>STATICFILES_DIRS</td> <td class="code"><pre>[]</pre></td> </tr> <tr> <td>STATICFILES_FINDERS</td> <td class="code"><pre>[&#x27;django.contrib.staticfiles.finders.FileSystemFinder&#x27;, &#x27;django.contrib.staticfiles.finders.AppDirectoriesFinder&#x27;]</pre></td> </tr> <tr> <td>STATICFILES_STORAGE</td> <td class="code"><pre>&#x27;django.contrib.staticfiles.storage.StaticFilesStorage&#x27;</pre></td> </tr> <tr> <td>STATIC_ROOT</td> <td class="code"><pre>None</pre></td> </tr> <tr> <td>STATIC_URL</td> <td class="code"><pre>&#x27;/static/&#x27;</pre></td> </tr> <tr> <td>TEMPLATES</td> <td class="code"><pre>[{&#x27;APP_DIRS&#x27;: True, &#x27;BACKEND&#x27;: &#x27;django.template.backends.django.DjangoTemplates&#x27;, &#x27;DIRS&#x27;: [], &#x27;OPTIONS&#x27;: {&#x27;context_processors&#x27;: [&#x27;django.template.context_processors.debug&#x27;, &#x27;django.template.context_processors.request&#x27;, &#x27;django.contrib.auth.context_processors.auth&#x27;, &#x27;django.contrib.messages.context_processors.messages&#x27;]}}]</pre></td> </tr> <tr> <td>TEST_NON_SERIALIZED_APPS</td> <td class="code"><pre>[]</pre></td> </tr> <tr> <td>TEST_RUNNER</td> <td class="code"><pre>&#x27;django.test.runner.DiscoverRunner&#x27;</pre></td> </tr> <tr> <td>THOUSAND_SEPARATOR</td> <td class="code"><pre>&#x27;,&#x27;</pre></td> </tr> <tr> <td>TIME_FORMAT</td> <td class="code"><pre>&#x27;P&#x27;</pre></td> </tr> <tr> <td>TIME_INPUT_FORMATS</td> <td class="code"><pre>[&#x27;%H:%M:%S&#x27;, &#x27;%H:%M:%S.%f&#x27;, &#x27;%H:%M&#x27;]</pre></td> </tr> <tr> <td>TIME_ZONE</td> <td class="code"><pre>&#x27;UTC&#x27;</pre></td> </tr> <tr> <td>USE_I18N</td> <td class="code"><pre>True</pre></td> </tr> <tr> <td>USE_L10N</td> <td class="code"><pre>True</pre></td> </tr> <tr> <td>USE_THOUSAND_SEPARATOR</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>USE_TZ</td> <td class="code"><pre>True</pre></td> </tr> <tr> <td>USE_X_FORWARDED_HOST</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>USE_X_FORWARDED_PORT</td> <td class="code"><pre>False</pre></td> </tr> <tr> <td>WSGI_APPLICATION</td> <td class="code"><pre>&#x27;askcompany.wsgi.application&#x27;</pre></td> </tr> <tr> <td>X_FRAME_OPTIONS</td> <td class="code"><pre>&#x27;DENY&#x27;</pre></td> </tr> <tr> <td>YEAR_MONTH_FORMAT</td> <td class="code"><pre>&#x27;F Y&#x27;</pre></td> </tr> </tbody> </table> </div> <div id="explanation"> <p> You're seeing this error because you have <code>DEBUG = True</code> in your Django settings file. Change that to <code>False</code>, and Django will display a standard page generated by the handler for this status code. </p> </div> </body> </html>

  • 장고
  • django
  • react
  • docker
  • python
준영 댓글 2 좋아요 0 조회수 223

urlpatterns 질문

미해결

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

아래처럼 urlpatterns를 작성하면 될 것 같은데 re_path를 사용하시는 이유가 무엇인가요? path ( 'post/<str:username>/' , views . user_page , name = 'user_page' ),

  • 장고
  • react
  • django
  • python
  • docker
준영 댓글 1 좋아요 0 조회수 226

선생님 강의내용을 그대로 블로깅한분이 계신데 괜찮은가요?

미해결

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

https://moz1e.tistory.com/73?category=856588 진도를 나가다 보니 한 수강생분이 강의내용을 토대로 블로깅하셨는데 문제가 될 수 있을까봐 알려드립니다.

  • 장고
  • react
  • python
  • docker
  • django
준영 댓글 1 좋아요 1 조회수 263

urls.py에서 django_pydenticon 참조가 안되네요

미해결

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

askcompany/urls.py askcompany/settings/common.py 안되는 이유가 뭔지 모르겠습니다

  • 장고
  • python
  • django
  • react
  • docker
준영 댓글 2 좋아요 0 조회수 316

PostUpdateView가 변경된 form 을 저장하지 않습니다.

미해결

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

class PostUpdateView ( LoginRequiredMixin , UpdateView ): model = Post form_class = PostForm def form_valid ( self , form ): messages . success ( self . request , '포스팅을 수정했습니다.' ) return super (). form_valid ( form ) post_edit = PostUpdateView . as_view () 선생님과 같이 해당 코드를 작성해봤는데요 이게 저장과 메세지는 구현이 되는데 실제로 변경사항이 저장되지는 않는듯 합니다

  • 장고
  • python
  • react
  • django
  • docker
준영 댓글 2 좋아요 0 조회수 304

장고 회원가입시 로그인 화면으로 이동하는 방법.

미해결

장고로 회원가입 및 로그인 만들고 있습니다. 둘다 회원가입 완료 및 로그인 완료시 메인화면으로 넘어가게끔 설정은 완료했는데, 더 나아가서 회원가입시 로그인 화면으로 이동하게끔 바꿔주료고 합니다. 원래는 밑에 registerview 클래스의 success_url 이 '/' 인데, 이 부분만 login.html로 바꿔주면 될 줄 알았는데 에러가 이런식으로 나오더라고요 해당 login.html파일은 fcuser의 하위폴더에 있는 템플릿에 있습니다. register도 마찬가지로 login.html과 같은 템플릿 안에 있습니다. fcuser/login.html로 연결이 되야 제가 원하는 화면이 나올거 같은데, 무엇이 문제일까요 ㅠㅠ ㅕurl경로 설정은 다음과 같이 되어 있습니다. url 설정을 다시 해줘야 하는걸까요 ㅠㅠ

  • 장고
  • 회원가입
  • 로그인
  • django
배윤주 댓글 0 좋아요 0 조회수 206

magicgrid.js 파일이름

미해결

작정하고 장고! Django로 Pinterest 따라만들기 : 바닥부터 배포까지

저는 magicgrid.js라고 이름을 지었을 때는 계속 list.html이 인식을 못하는데 magicgrid123.js라고 하니까 되는데 혹시 왜 그런지 아시나요.. 돼서 기쁘긴 한데 도대체 왜 이런건지 이유를 모르겠네요

  • 장고
  • python
  • django
  • docker
돈가스날다 댓글 1 좋아요 0 조회수 237

인기 태그

인프런 TOP Writers

주간 인기글