【发布时间】:2015-01-06 21:08:52
【问题描述】:
这是我在 web2py/applications/myapp/routes.py 文件中的内容(这是预加载的,只是添加了 BASE 参数):
from fileutils import abspath
from languages import read_possible_languages
possible_languages = read_possible_languages(abspath('applications', app))
#NOTE! app - is an application based router's parameter with name of an
# application. E.g.'welcome'
routers = dict(
app= dict(
default_language = possible_languages['default'][0],
languages = [lang for lang in possible_languages
if lang != 'default'],
),
BASE= dict(
default_application = 'myapp',
default_controller = 'default',
default_function = 'index',
functions = ['my', 'functions', 'are', 'here'],
)
)
当我访问 127.0.0.1:8000 时,我被路由到欢迎应用程序,当我访问 127.0.0.1:8000/function 和 127.0.0.1:8000/myapp/function 时收到索引错误。我重新加载了路线。这是我的 web2py 目录中唯一的 routes.py 文件。
【问题讨论】:
-
你在任何地方定义
app吗?如果不是,则应将其替换为实际应用程序的名称。如果您显示所获得的回溯可能会有所帮助。 -
我只在尝试在没有控制器的情况下访问站点时收到以下错误:“无效的控制器(主页/索引)”或“无效的请求”。我在路由文件中注意到此注释:“要启用该文件,1. 将
/router.example.py 重命名为 routes.py..” 我的根文件夹中没有路由文件;仅在我的应用程序文件夹中。我也需要一个根目录吗?我真的不明白为什么映射不起作用。
标签: web2py