我正在使用web.py作为应用程序,我想在开发过程中使用livereload,但我无法弄清楚如何使两者相处?
app.py
import web
from livereload import Server
urls = (
'/', 'index'
)
class index:
def GET(self):
return "Hello, Kitty"
if __name__ == '__main__':
app = web.application(urls, globals()).wsgifunc()
server = Server(app)
server.serve()
我正在关注https://github.com/lepture/python-livereload
在我的终端server = Server(app.wsgi_app)
server.serve()
我输入
livereload app.py
我看到了
[I 161130 14:05:03服务器:283]在http://127.0.0.1:35729上服务
[I 161130 14:05:03处理程序:60]开始观看更改
[I 161130 14:05:03处理程序:62]开始检测更改
但在加载http://127.0.0.1:35729时在浏览器中我看到了这个
import web
from livereload import Server
urls = (
'/', 'index'
)
class index:
def GET(self):
return "Hello, Pussy"
if __name__ == '__main__':
app = web.application(urls, globals()).wsgifunc()
server = Server(app)
server.serve()
我看到python脚本呈现为普通tex。
更新 我决定再试一次,然后成功,对我有好处。)
from livereload import Server
import web
from nestpas.views import *
from nestpas.urls import *
import sys
logging.basicConfig(stream=sys.stdout, level=logging.DEBUG)
# web.config.debug = False
web.ctx.debug = False
app = web.application(urls, globals(), autoreload=False)
webapp = app.wsgifunc()
if __name__ == '__main__':
## app.run()
server = Server(webapp)
server.watch('static/', 'templates/', 'nestpas/')
server.serve(port=8080, host='localhost')
我正在使用的文件存储在静态,模板和nestpas中,这是存储Python模块的地方。我遇到了将会话存储在磁盘上的一些问题,但我设法通过使用DBStore来改变它
from livereload import Server
import web
from nestpas.views import *
from nestpas.urls import *
import sys
logging.basicConfig(stream=sys.stdout, level=logging.DEBUG)
# web.config.debug = False
web.ctx.debug = False
app = web.application(urls, globals(), autoreload=False)
webapp = app.wsgifunc()
# Setup session storage
db = web.database(dbn='sqlite', db='dev.db')
store = web.session.DBStore(db, 'sessions')
session = web.session.Session(app, store)
if __name__ == '__main__':
## app.run()
server = Server(webapp)
server.watch('static/', 'templates/', 'nestpas/')
server.serve(port=8080, host='localhost')
下一个目标是弄清楚如何在localhost上使用Livereload,而不必在部署到生产时考虑它。