当用户访问一个杂志页面,一个按钮应该出现,将允许当前登录的用户订阅特定的杂志,如果用户已经登录,按钮应该是可见的匿名用户。
我已经得到了按钮,显示当用户登录,但点击按钮不会叫我的控制器功能。
如果是这样的控制器功能:
@auth.requires_login()
def subscribe():
mag_id = request.args(0, cast=int)
db.subscribe.insert(magazine=mag_id, subscriber=auth.user.id)
这是意见的部分:
<div>
{{=magazine.title}}
{{=magazine.description}}
</div>
<div>
{{ if auth.is_logged_in():}}
{{=A('subscribe', _class="btn_subscribe", callback=URL("subscribe", args=magazine.id))}}
{{pass}}
</div>
该<a>
按钮显示为这样:
<a href="#null" onclick="ajax('/myapp/default/subscribe/3',[],'me');return false">subscribe</a>
和控制器功能不会被调用,而用户永远不会认购。