1
我希望能夠加載(本地主機:6543 /用戶),如何否定python上的match_param? (金字塔)
它不會加載,因爲它需要第二個參數(例如本地主機:6543 /用戶/ X)。
我意識到了這個問題,那是因爲我設置我的路線上。
config.add_route('users', '/users/{action}')
這裏是我的init.py
def includeme(config):
config.add_static_view('user_static', 'user:static', cache_max_age=3600)
config.add_static_view('static', 'user:static', cache_max_age=3600)
config.add_route('users', '/users/{action}')
config.scan()
這裏是我的views.py
class UserView:
def __init__(self, request):
self.request = request
@view_config(route_name='users', renderer='templates/users.jinja2')
def users(self):
return {'title': 'Users'}
@view_config(route_name='users', renderer='json', match_param='action=list')
def list(self):
#return list
@view_config(route_name='users', renderer='json', match_param='action=add')
def add(self):
#add new user
@view_config(route_name='users', renderer='json', match_param='action=getUser')
def getUser(self):
#retrieve data for update
@view_config(route_name='users', renderer='json', match_param='action=updateUser')
def updateUser(self):
#update record
感謝您對那些誰將會回答,如果你可以給我的代碼一些改進, 請告訴我。
這裏您必須定義2條路線是正確的。一個與模式,一個沒有。這不是**嚴格**必要的,但它是最好的方法。你可以用'/ users/{action}'的模式命名第二個'user_action',或者如果你想要的話。 –