2013-05-01 1 views
0

플라스크 프레임 워크에 익숙하지 않고 방금 응용 프로그램을 만들었지 만 지금은 플라스크의 DB 연결에 어려움을 겪고 있습니다. 내 애플 리케이션을 MySQL에 연결하고 싶다. 나는이 링크 http://flask.pocoo.org/snippets/11/을 따라 왔지만 DB에 연결할 수 없습니다. 다음과 같이 내 코드는 : 예기치 않은 키워드 인수 'DB_NAME'을 가지고 초기화() : Flask Framework의 DB 연결 관련 문제

from flask import Flask , render_template,g 
from torndb import Connection 

app=Flask(__name__) 


@app.before_request 
def connect_db(): 
    g.db = Connection(DB_HOST="localhost", 
         DB_NAME="flask", 
         DB_USER="root", 
         DB_PASSWD="ghrix321") 


@app.route('/') 
def home(): 
    rows = g.db.iter("select * from user") 
    return render_template('home.html',rows=rows) 

형식 오류

.

그래서 DB에 연결하여 거기에서 데이터를 가져올 수 있도록 제안 해주십시오. 감사합니다.

답변

1

참조하는 스 니펫은 키워드 매개 변수를 사용하지 않습니다.

torndb의 설명서는 http://torndb.readthedocs.org/en/latest/입니다. 키워드 매개 변수를 사용하는 경우 함수 정의에있는 것처럼 키워드 매개 변수의 이름을 지정해야합니다. 여담으로

g.db = Connection('localhost','flask', user='root', password='ghrix321') 

, 데이터베이스에 전용 사용자를 사용하고, 응용 프로그램에 암호를 하드 코딩 그것을 위해 구성 파일을 사용하지 마십시오 이 올바른 호출입니다.

+0

답장을 보내 주셔서 감사합니다. 실제로 문제를 발견 했으니까요.하지만 그 후에 나는이 오류가 나타납니다. ** 어떤 모듈은 _mysql **이라는 이름을 가진 몇몇 연구 개발 이후에 발견되었습니다. mysqlDB하지만 이미 설치되어 있지만 가상 환경에서 flask를 사용하고 있습니다. 그래서 그게 문제가 될 수 있습니다. 그래서 당신은 저에게 – user2328484

+0

에 대한 약간의 도움을 줄 수 있습니까? 기본적으로 virtualenvs는 시스템 패키지에 대한 액세스없이 생성됩니다. 그래서 당신이 필요로하는 것은 그 venv 내에 설치해야합니다. dependencies를 requirements.txt 파일에 보관하면'pip install -r requirements.txt'로 새로운 virtualenv를 설정할 수 있습니다 –

+0

더 많은 정보를 얻으려면 http : //www.pip-installer .org/ko/latest/requirements.html –

관련 문제