1

我目前在 Windows 7 环境中开发 Pyramid Web 应用程序。我一直在我的 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>

这是在info.py视图子文件夹中的一个文件中(其中确实包含一个__init__.py文件)。这种方法在我使用 Mac 时有效,但现在我在 Windows 上尝试过,它似乎不起作用(尝试访问它时会抛出 404 Not Found 页面)。

经过一番调查,我发现(编译后的.pyc版本info.py)的版本不存在。 info.py是新的,是在 Windows 机器上添加的。作为测试,我尝试编辑在 Mac 上创建的文件并重新启动测试服务器。它也没有修改.pyc对应的版本,所以我假设 Windows 没有生成.pycpython 文件的版本。

这是一个普遍的问题,更重要的是,有没有解决办法?(我必须假设有......)

4

1 回答 1

3

对不起,你的问题不够清楚。看来你有某种读/写权限问题,生成 *.pyc 与它无关。

*.pyc 包含 Python 字节码,实际上它只是为了更快地加载原始 *.py 文件。每次 Python 成功读取 *.py 文件并能够写入(!)到同一目录时,它都会创建一个相应的 *.pyc 文件。

有关更多信息,请参阅已编译的 python 文件

于 2011-06-05T13:40:10.290 回答