新手请教python包含其他py文件的问题
hello.pyfrom flask import Flask,url_for,request,render_template
app=Flask(__name__)
from login import login
@app.route('/')
def hello_world():
return render_template('hello.html')
if __name__=='__main__':
app.run(host='0.0.0.0',debug=True)
login.py
from flask import Flask,url_for,request,render_template
#app=Flask(__name__)
@app.route('/login',methods=['POST','GET'])
def login():
if request.method == 'POST':
if request.form['user'] == 'admin':
return 'successfully'
else:
return 'no user'
title = request.args.get('title','default')
return render_template('login.html',title=title)
if __name__ == '__main__':
app.run(host='0.0.0.0',debug=True)
python hello.py 后,login里的路由不管用,请问是哪里错误,刚开始学python 报:NameError: name 'app' is not defined错误 首先,你的login.py没有导入app
其次,你光导入了那个函数,你也没调用啊
还是说不调用也可以,导入就行,我不太清楚,没学过Flask
总之建议楼主先去扎实下基础,再学这些 补上,这是hello.html代码,里面调用/login这个路由
<title>python web</title>
<a href=/login?title=abc><h1>Hello World!</h1></a> dysow 发表于 2021-2-24 17:01
补上,这是hello.html代码,里面调用/login这个路由
为啥要写2个py文档,服务器端一个py就足够用了
客户端和py没有关系了 楼主Flask的基本语法不扎实啊,你应该是想把路由拆分到多个文件中吧, 但是涉及到循环导入的问题, 这里可以用蓝图(Blueprint)解决, 你可以查询一下相关的信息
页:
[1]