【发布时间】:2016-04-22 12:18:50
【问题描述】:
我正在尝试在 Windows 10 下运行一个小型烧瓶模块化应用程序。我创建了一个模块来午餐索引页面。当单个应用程序正确运行并加载主页时,我无法使其模块化,导致找不到 404 错误页面。
这是我的目录结构:
Application directory structure
我的文件:
runserver.py
import os
#from app.models import User, Role
from flask import Flask
basedir = os.path.abspath(os.path.dirname(__file__))
from landingpage import app
app = Flask(__name__)
if __name__ == '__main__':
app.run(debug=True)
__init__.py
import os
from flask import Flask, render_template, session, redirect, url_for
from flask.ext.script import Manager
from flask.ext.bootstrap import Bootstrap
from flask.ext.moment import Moment
from flask.ext.wtf import Form
from wtforms import StringField, TextField, DateField, SubmitField
from wtforms.validators import Required
from wtforms.fields.html5 import DateField
from flask.ext.sqlalchemy import SQLAlchemy
from flask.ext.admin.form.widgets import DatePickerWidget
basedir = os.path.abspath(os.path.dirname(__file__))
#print "basedir is %r " % (basedir)
app = Flask(__name__)
import views
class AnotherSearchForm(Form):
place = StringField(default=u'Où voulez-vous aller?', validators=[Required()])
checkin =TextField(default=u'checkin', validators=[Required()])
checkout=TextField(default=u'checkout', validators=[Required()])
dt = DateField('DatePicker', format='%Y-%m-%d')
submit = SubmitField('Rechercher')
views.py
import os
basedir = os.path.abspath(os.path.dirname(__file__))
from flask import Flask, render_template, session, redirect, url_for, current_app
#from .. import db
#from ..models import User
#from ..email import send_email
import landingpage
from landingpage import app
#from .forms import AnotherSearchForm
@app.route('/', methods=['GET', 'POST'])
def index():
form = AnotherSearchForm()
return render_template('indexnew.html',
title='Home',
form=form)
如下所示,应用程序运行正常,
$ python runserver.py
C:\Users\admin\Anaconda\lib\site-packages\flask_sqlalchemy\__init__.py:800: UserWarning: SQLALCHEMY_TRACK_MODIFICATIONS adds significant overhead and will be disabled by default in the future. Set it to True to suppress this warning.
warnings.warn('SQLALCHEMY_TRACK_MODIFICATIONS adds significant overhead and will be disabled by default in the future. Set it to True to suppress this warning.')
* Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)
* Restarting with stat
但无法在http://127.0.0.1:5000/ 上加载主页 indexnew.html,出现 404 错误:
127.0.0.1 - - [22/Apr/2016 14:10:21] "GET / HTTP/1.1" 404 -
【问题讨论】:
-
访问页面时,命令行有输出吗?
-
只有上面的错误404。
-
对我来说,views.py 似乎没有正确导入。
-
但所有其他导入,如landing.views 或 .视图也给出了一个未找到模块的错误。
-
测试一下,在底部放一个
print行,看看它是否打印到控制台。
标签: python flask http-status-code-404