我目前正在开发Pyramid Web应用程序的Windows 7环境中。我一直在我的Mac上开发这个应用程序,但最近已经死了,所以我不得不搬到我的Windows机器上。
我已经设置了我需要的一切; Python 2.7,Pyramid,pyramid_beaker,MongoDB,mongoengine等。
在我编辑模板时,它似乎正在工作。但是,当我尝试编辑视图以向应用添加新页面时,似乎无法找到它。我添加了以下路线:
config.add_route('info_about','/info/about')
config.add_route('info_contact','/info/contact')
config.add_route('info_copyright','/info/copyright')
config.add_route('info_privacy','/info/privacy')
config.add_route('info_terms','/info/terms')
...由view_config装饰器处理,如:
@view_config(route_name='info_about', renderer="myproject:templates/info/about.mako", permission='all')
def info_about(request):
<code goes here>
这是在view子文件夹中的info.py
文件中(其中包含__init__.py
文件)。当我在Mac上时,这种方法很有效,但是现在我已经在Windows上试过了,它似乎不起作用(它在尝试访问时会抛出404 Not Found页面)。
经过一番调查,我发现.pyc
info.py
版本(编译版本)不存在。 info.py
是新的,已添加到Windows计算机上。作为测试,我尝试编辑在Mac上创建的文件并重新启动测试服务器。它也没有修改.pyc
对应物,因此我假设Windows没有生成.pyc
版本的python文件。
这是一个常见问题,更重要的是,是否有解决方案? (我必须假设有...)
答案 0 :(得分:3)
抱歉,您的问题不够明确。看起来你有某种读/写权限问题,生成* .pyc与它无关。
* .pyc包含Python字节码,实际上只是加载原始* .py文件更快。每次Python成功读取* .py文件并且能够将(!)写入同一目录时,它都会创建相应的* .pyc文件。
有关详细信息,请参阅compiled python files。