
지금까지는 하나의 파일에서 URLconf를 정의했지만 이제 2개의 파일로 나누어 정의하려고 합니다. 간단한 프로젝트에서는 하나의 파일에서 정의하는 것이 효율적일 수도 있습니다. 하지만 규모가 큰 프로젝트에서는 하나의 프로젝트 안에 여러 개의 앱이 포함되어 있어 URL pattern의 수가 굉장히 많아지기 때문에 2개의 파일로 나누어 정의하는 것이 훨씬 효율적입니다. 1. URLconf 2계층으로 나누기 URLconf는 다음과 같이 나누어집니다. 프로젝트 URL : 프로젝트 전체를 정의. Django App의 urls.py로 분기. 앱 URL : 앱마다 정의. Djnago 프로젝트에 생성된 App 마다 urls.py를 만들어 정의. 2. 프로젝트 urls.py 변경 현재 Django 프로젝트 폴더 아래에 ..

Django 프로젝트와 MySQL을 연결하면 settings.py에 MySQL 서버에 접속하기 위한 정보를 적게 된다. 이 프로젝트를 개인 pc에서만 사용하면 상관없지만 git에 올릴 경우, 패스워드같은 개인 정보까지 같이 올라가기 때문에 인터넷에 내 패스워드가 떠돌아다니게 된다. 이런 불상사를 막기 위해 MySQL 서버에 연결할 때 필요한 정보는 별도의 파일을 만들어 저장하고 settings.py가 이 파일을 읽어와 사용할 수 있도록 해야한다. 1. settings.py 수정 먼저 settings.py의 DATABASE 부분을 다음과 같이 MySQL 연결 정보가 담긴 파일을 읽을 수 있도록 수정해준다. 2. mysql.cnf 파일 생성 MySQL 연결 정보를 적을 파일을 생성한다. 이 때, manage..

로그인 페이지나 게시글 작성 페이지 등을 구현할 때, 사용자가 자신의 활동이 실패했는지, 성공했는지, 실패했다면 왜 실패했는지 등을 알 수 있도록 메시지나 알람을 띄워줘야 합니다. Frontend 단에서 javascript로 alert 창을 이용하여 구현할 수도 있지만 Django에서는 이를 좀 더 쉽게 구현할 수 있는 프레임워크를 제공합니다. 바로 Messages Framework입니다. 1. Messages Framework : 쿠키 및 세션 기반의 1회성 메시지를 담는 용도 메시지를 하나의 HttpRequest 인스턴스에 임시로 저장하고 바로 다음 request에 표시됨 1회 노출되고 해당 페이지를 reload하면 사라짐 Message class 속성 message: 실제 메시지 level: 메시지..
urls.py from django.contrib import admin from django.urls import path, re_path from dkea.views import * urlpatterns = [ re_path(r'^admin/', admin.site.urls), re_path(r'^$', MainView, name='main'), re_path(r'^list/(?Pc\d+)/$', ProductListView, name='list'), re_path(r'^detail/(?P\d+)/$', ProductDetailView, name='detail'), ] views.py ① MainView def MainView(request): try: cursor = connection.cursor..

가끔 시스템 리소스 부족으로 Django에서 자체적으로 로컬 서버 운영을 멈출 때가 있다. 그러고 다시 프로젝트를 시작해보면 다음과 같은 에러가 날 때가 있다. django.db.utils.OperationalError: (2003, "Can't connect to MySQL server on 'localhost' (10061)") Django에서 MySQL 서버에 아예 접속을 하지 못하는 것이다. 이럴 때는 서버가 현재 동작하는지 확인해봐야 한다. 가장 쉬운 방법은 워크벤치에 들어가 확인하는 것. 결국 워크벤치도 MySQL 서버와 연결되어 돌아가는 것이기 때문에 서버가 동작하지 않는다면 첫 화면에 동작하지 않는다고 바로 뜬다. 먼저 워크벤치에 들어가 왼쪽의 Administration - Server S..
Django 프로젝트와 MySQL을 연동하기 위해 mysqlclient 모듈을 깔아야했다. 그러나 visualstudio / visual c++을 설치하라는 에러가 계속 발생하면서 설치에 실패했다. 열심히 구글링 한 결과 whl 파일을 다운 받아 설치하는 방법을 찾았다. 먼저 아래 주소로 들어가 자신의 pc와 pc에 깔린 파이썬 버전에 맞는 whl 파일을 찾아 다운로드한다. https://www.lfd.uci.edu/~gohlke/pythonlibs/#mysqlclient Python Extension Packages for Windows - Christoph Gohlke by Christoph Gohlke, Laboratory for Fluorescence Dynamics, University of C..

저번 글과 이어서 진행하도록 하겠습니다. 저번 글에서는 Django와 MySQL을 연동하는 작업까지만 하고 마쳤습니다. 이번에는 쿼리문을 작성하여 MySQL에 저장되어있는 데이터를 가져와 view에서 사용하려 합니다. MySQL을 사용하더라 도 기존에 우리가 사용한 objects.all(), objects.get() 등의 queryset을 통하여 데이터를 가져올 수 있습니다. 하지만 SQL문 을 사용하는 것이 Django 외의 프로그래밍 영역에서 활용도가 훨씬 높기 때문에 SQL문을 사용하기로 합니다. (+ SQL문 연습) 1. BookListView 변경 # 새로 import 하는 모듈 from django.db import connection def BookListView(request): # boo..

이번에는 Django와 MySQL을 연동해보려고 합니다. Django는 default 데이터베이스로 SQLite3를 사용합니다. SQLite3는 용량이 작고 가볍지만 대규모 프로젝트에서는 잘 쓰이지 않습니다. 또한 MySQL이 기본적으로 제공하는 Workbench라는 툴을 이용하면 데이터베이스를 더 쉽게 사용하 고 관리할 수 있어 굉장히 편리합니다. MySQL과 Workbench는 이미 설치되어 있다고 가정하겠습니다. 1. mysqlclient 설치 Python에서 MySQL을 사용하기 위해 우선 Python DB API 표준을 따르는 MySQL DB 모듈을 설치해야 합니다. MySQL을 지원하는 Python 모듈은 여러 가지가 있는데, 여기서는 mysqlclient 라는 모듈을 사용하기로 합니다. 먼저..
- Total
- Today
- Yesterday
- Django Instagram
- Redis
- Django 해시태그
- Django 업로드
- Django 회원 정보 수정
- Django 어플리케이션
- Django 팔로우
- java
- Django 회원가입
- MySQL
- Django 컬렉션
- query parameter
- Django 북마크
- Redis Cache
- Django 로그인
- Django 비밀번호 수정
- python
- 장고
- 파이썬
- Django 검색
- Django
- Django 좋아요
- Django 인스타그램
- Django 댓글
- Django application
- Django User
- Django 프로젝트 생성
- 북마크 어플리케이션
- Django 로그아웃
- 서점 어플리케이션
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |