web2py - 如何将field2的值设置为field1的值

时间:2013-11-06 04:14:30

标签: python web2py default-value

我是web2py的新手,我正在尝试向auth_user添加额外的字段,我试图将'mentor'的默认值设置为为'referrer'输入的值,如下面的代码所示,但它不起作用。创建记录时不会附加任何数据。 “导师”可以在稍后阶段更改,但默认设置为“推荐人”。我究竟做错了什么?请指教。

from gluon.tools import Auth, Crud, Service, PluginManager, prettydate
auth = Auth(db)
crud, service, plugins = Crud(db), Service(), PluginManager()
auth.settings.extra_fields['auth_user']=[
   Field('gender', requires=IS_IN_SET(['Female', 'Male'])),
   Field('birthday', type='date'),
   Field('country'),
   Field('city'),
   Field('referrer', default = 'admin'),
   Field('mentor', default=request.post_vars.referrer)]

1 个答案:

答案 0 :(得分:0)

你可能有更多的运气

def get_default_mentor():
    return request.post_vars.referrer

default=get_default_mentor()

根据我的经验,当默认值可以更改时,最好将默认字段设置为获取默认值的函数。