2014-08-30 1 views
-1

저는 Flask를 처음 사용하고 간단한 기능으로 탐구하기 시작했습니다. 아이디어는 하나의 필드 만 가진 양식을 가지고이 양식 데이터를 읽고 그것을 다른 함수로 전달하여 다른 작업을 수행하는 것입니다. 그래서 지금은 플라스크를 올바르게 설정하고 실행할 수있었습니다.들여 쓰기 오류 : 양식 제출 후 변수를 반환 할 때 예기치 않은 들여 쓰기

사용자가 양식을 제출하면 "양식 제출"과 같은 텍스트를 반환하면 값을 볼 수 있습니다. 하지만 이렇게하면 오류가 발생합니다.

내가 한 행동 : 사용자가 하드 코딩 된 텍스트를 반환하는 대신 웹 사이트의 HTML 소스 코드를 반환해야합니다. 이를 위해 urllib2를 사용하고 있으며 google.com URL을 전달하는 샘플로 사용하고 있습니다. 하지만 몇 가지 들여 쓰기 오류가 발생합니다. 참조 용

from flask import render_template, flash, redirect 
from app import app 
from forms import LoginForm 
import urllib2 
# index view function suppressed for brevity 
@app.route('/login', methods = ['GET', 'POST']) 
def login(): 
    form = LoginForm() 
    if form.validate_on_submit(): 
     flash('Login requested for OpenID="' + form.openid.data + '", remember_me=' + str(form.remember_me.data)) 
     #return "form submitted" #This is working properly 
     response = urllib2.urlopen("http://www.google.com") # Here is the problem, I'm consistent in using spaces if I comment this and below line and uncomment above hard coded one, it works perfectly 
     return response 


    return render_template('login.html', 
     title = 'Sign In', 
     form = form) 

역 추적 :

여기 내 코드입니다.

Traceback (most recent call last): 
    File "run.py", line 2, in <module> 
    from app import app 
    File "C:\Python27\projects\pnr-project\app\__init__.py", line 6, in <module> 
    from app import views 
    File "C:\Python27\projects\pnr-project\app\views.py", line 12 
    response = urllib2.urlopen("http://google.com") 
    ^
IndentationError: unexpected indent 

무엇이 여기에 있습니까? 저에게 알려주세요.

+4

들여 쓰기에 탭과 공백이 혼합 된 것처럼 보입니다. –

+0

@NickBastin 응답 주셔서 감사합니다. 방금 내 코드에 몇 가지 주석을 추가했습니다. 내가 언급 한 것처럼 그 줄에 문제가있다. – rekcah

+1

코드 편집기 기능을 사용하십시오 : 공백 표시, 탭을 공백으로 변환, PEP8 플러그인. 이것들이 도움이 될 것입니다. –

답변

-2

Worked, finally. 내가 한 줄씩 디버깅을 시도하고 아래 수정 작업!

response = urllib2.urlopen('http://google.com') 
     html = response.read() 
     return html 
+0

그것은 'IndentationError' 우수성이다. – Matthias

관련 문제