쿼리 문자열을 얻는 방법에 대한 플라스크 문서에서 분명하지 않습니다. 나는 새로운 문서를보고 찾지 못했습니다!Flask에서 쿼리 문자열을 어떻게 구합니까?
그래서
@app.route('/')
@app.route('/data')
def data():
query_string=??????
return render_template("data.html")
쿼리 문자열을 얻는 방법에 대한 플라스크 문서에서 분명하지 않습니다. 나는 새로운 문서를보고 찾지 못했습니다!Flask에서 쿼리 문자열을 어떻게 구합니까?
그래서
@app.route('/')
@app.route('/data')
def data():
query_string=??????
return render_template("data.html")
from flask import request
@app.route('/data')
def data():
# here we want to get the value of user (i.e. ?user=some-value)
user = request.args.get('user')
이 예에서는 쿼리 문자열에 전달 된 "user"매개 변수의 값을 반환합니다. 쿼리 문자열 자체. "쿼리 문자열"은 물음표 뒤와 파운드 기호 앞에 모든 문자가 있음을 의미합니다. –
여전히 유용 답변은 그것이 질문에 관련되어 고려하십시오. 유효하고 +1 – Necronet
사용자가없는 경우 예외가 발생합니까? (args가 단지 dict 일지는 모른다.) –
전체 URL이 request.url
로 사용할 수 있으며, 쿼리 문자열이 request.query_string
로 사용할 수 있습니다.
from flask import request
@app.route('/adhoc_test/')
def adhoc_test():
return request.query_string
쿼리 문자열에 전달 된 개별 알려진 PARAM에 액세스하려면 request.args.get('param')
를 사용할 수 있습니다
다음은 예입니다. 내가 아는 한이 일은 "옳은"방법입니다.
ETA : 더 자세히 살펴보기 전에 왜 쿼리 문자열을 사용해야하는지 스스로 물어야합니다. 필자는 원시 문자열을 가져올 필요가 없었습니다. Flask에는 추상화 된 방식으로 액세스하기위한 메커니즘이 있습니다. 그렇게하지 않을 수 밖에없는 강력한 이유가없는 한 그걸 사용해야합니다.
Werkzeug/Flask 이미 모든 것이 파싱되어 있습니다. 필요가 urlparse 다시 같은 일을 할 수 없습니다 :
from flask import request
@app.route('/')
@app.route('/data')
def data():
query_string = request.query_string ## There is it
return render_template("data.html")
요청 및 응답 개체에 대한 전체 문서는 WERKZEUG에 있습니다 http://werkzeug.pocoo.org/docs/wrappers/
우리는 request.query_string를 사용하여이 작업을 수행 할 수 있습니다.
예 : - http://flask.pocoo.org/docs/0.10/blueprints/
이 이름은 쿼리의 일환으로 전달되는 고려할 수 있습니다
는 view.py
from my_script import get_url_params
@app.route('/web_url/', methods=('get', 'post'))
def get_url_params_index():
return Response(get_url_params())
당신은 또한 플라스크 청사진을 사용하여 더 많은 모듈을 고려할 수 있습니다 문자열 /웹 URL /? FIRST_NAME = 존
## here is my_script.py
## import required flask packages
from flask import request
def get_url_params():
## you might further need to format the URL params through escape.
firstName = request.args.get('first_name')
return firstName
알다시피 작은 예제 일뿐입니다. 여러 값을 가져 와서 + formate하고이를 사용하거나 템플릿 파일로 전달할 수 있습니다.
설명서의 내용은 다음과 같습니다. http://flask.pocoo.org/docs/quickstart/#the-request-object – Jarus