mysql 연동을 위해 mysqlclient를 설치중 오류가 발생합니다.

아마도 자신의 환경에 맞는 패키지를 설치하지 않아서 생기는 문제같습니다.

https://www.lfd.uci.edu/~gohlke/pythonlibs/#mysqlclient.Then

 

Python Extension Packages for Windows - Christoph Gohlke

by Christoph Gohlke, Laboratory for Fluorescence Dynamics, University of California, Irvine. Updated on 26 March 2020 at 04:43 UTC. This page provides 32- and 64-bit Windows binaries of many scientific open-source extension packages for the official CPytho

www.lfd.uci.edu

위의 사이트에 접속하셔서 자신의 파이썬 버전에 맞춰 whl파일을 받으신후

pip install mysqlclient-1.4.6-cp37-cp37m-win32.whl

이렇게 직접 설치해주시면 됩니다.

장고의 내장 로그인 기능 이용시 간단하게 로그인후 이전페이지로 이동할수있다.

 

로그인 폼안에 아래의 코드를 추가해주면 자동으로 적용된다.

<input type="hidden" name="next" value="{{ next }}">

 

너무편하다

파이참에서 작업하던 프로젝트를 라즈베리로 옮겨서 실행하니 

django.db.migrations.exceptions.NodeNotFoundError 에러가 뜨면서 실행이 되지않았다.

검색해보니 마이그레이션을 재설정하면 된다고 한다.

 

1. 프로젝트 내에 모든 마이그레이션 파일 제거

__init__.py를 제외한 모든것을 제거

find . -path "*/migrations/*.py" -not -name "__init__.py" -delete
find . -path "*/migrations/*.pyc"  -delete

2. 초기화후 스키마 생성

python manage.py makemigrations
python manage.py migrate

 

이렇게하고 다시 서버를 돌려보니 잘실행된다. 

유저정보를 가져와서 쿠키로 저장후 자바스크립트에서 읽어주면 된다.

django쪽 코드

def dashboard(request):
    response = render(request, 'index_main.html')  # django.http.HttpResponse
    user=request.user
    topic=user.topic
    response.set_cookie(key='topic', value=topic)
    return response

request.user : user객체 받기

user.topic : user객체에 topic이라는 값

 

자바스크립트쪽 코드

var topic=getCookie('topic');

function getCookie(name) {
	var value = document.cookie.match('(^|;) ?' + name + '=([^;]*)(;|$)');
	return value? value[2] : null;
}

getCookie(name) : 쿠키를 가져오는 함수

 

+ Recent posts