Python 为什么我的url路由不是';不行吗?

Python 为什么我的url路由不是';不行吗?,python,flask,pymongo,werkzeug,Python,Flask,Pymongo,Werkzeug,objectid转换器为。我在那里放了一些调试代码,发现它甚至没有被触发。我认为这与创建url规则的顺序有关,所以我尝试在声明所有其他规则之前用objectid声明url规则;然而,这根本没有帮助。 我的代码怎么了?以下是当前url映射: >>> url_for('.users_api', page=1) '/admin/user' >>> url_for('.users_api', page=2) '/admin/user/page/2' >>

objectid转换器为。我在那里放了一些调试代码,发现它甚至没有被触发。我认为这与创建url规则的顺序有关,所以我尝试在声明所有其他规则之前用objectid声明url规则;然而,这根本没有帮助。 我的代码怎么了?以下是当前url映射:

>>> url_for('.users_api', page=1) 
'/admin/user'
>>> url_for('.users_api', page=2) 
'/admin/user/page/2'
>>> url_for('.users_api', user_id=users[0].id) 
'/admin/user?user_id=521781f4fe8974125cef5ea9' # not what I expected
Map([
管理员\u模块用户\u api>,
管理员\u模块用户\u api>,
管理员\u模块用户\u api>,
管理员\u模块用户\u api>,
……还有一大堆规则。。
])

您的URL映射与规则定义和/或
调用的
URL\u不匹配。您定义了一个类似于
/user/page/
的规则,但在URL映射中它是
/admin/user/
(我猜
/admin
部分是自动添加的,但
/user/page/
/user/
仍然不同)。想解释一下吗?@dAnjou我更新了。管理员是自动加前缀的。我不知道为什么这些
int:
objectid:
没有显示,来自其他蓝图的视图也没有显示它们收到的参数类型。
>>> url_for('.users_api', page=1) 
'/admin/user'
>>> url_for('.users_api', page=2) 
'/admin/user/page/2'
>>> url_for('.users_api', user_id=users[0].id) 
'/admin/user?user_id=521781f4fe8974125cef5ea9' # not what I expected
Map([
 <Rule '/admin/user/new' (POST, OPTIONS) -> admin_mod.users_api>,
 <Rule '/admin/user/uid/<user_id>' (PUT, OPTIONS, DELETE) -> admin_mod.users_api>,
 <Rule '/admin/user/page/<page>' (HEAD, OPTIONS, GET) -> admin_mod.users_api>,
 <Rule '/admin/user' (HEAD, OPTIONS, GET) -> admin_mod.users_api>,
 ... # and a bunch of rules ..
])