鱼C论坛

 找回密码
 立即注册
查看: 2276|回复: 5

新手请教python包含其他py文件的问题

[复制链接]
发表于 2021-2-24 16:50:00 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
hello.py
from 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
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2021-2-24 16:51:12 | 显示全部楼层
报:NameError: name 'app' is not defined错误
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-2-24 16:56:43 | 显示全部楼层
首先,你的login.py没有导入app
其次,你光导入了那个函数,你也没调用啊
还是说不调用也可以,导入就行,我不太清楚,没学过Flask
总之建议楼主先去扎实下基础,再学这些
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-2-24 17:01:11 | 显示全部楼层
补上,这是hello.html代码,里面调用/login这个路由
<title>python web</title>
<a href=/login?title=abc><h1>Hello World!</h1></a>
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-2-24 17:39:48 From FishC Mobile | 显示全部楼层
dysow 发表于 2021-2-24 17:01
补上,这是hello.html代码,里面调用/login这个路由

为啥要写2个py文档,服务器端一个py就足够用了
客户端和py没有关系了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-2-24 21:50:40 | 显示全部楼层
楼主Flask的基本语法不扎实啊,  你应该是想把路由拆分到多个文件中吧, 但是涉及到循环导入的问题, 这里可以用蓝图(Blueprint)解决, 你可以查询一下相关的信息
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-9-21 11:27

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表