解决使用streamlit_authenticator时的报错:the ‘form_name‘ parameter has been replaced with the ‘fields‘

由于网上查找了好多帖子都没有明确解决方案,想分享出来给大家:

大部分能找到的帖子,都会有这句代码让大家引用,用来进行用户登录操作

name, authentication_status, username = authenticator.login('Login', 'main')

但实际运行时会报错为:

the 'form_name' parameter has been replaced with the 'fields'

通过查找GITHUB,有说明如下:

Authenticate.login

Parameters:

  • location: str, {'main', 'sidebar'}, default 'main'
    • Specifies the location of the login widget.
  • max_concurrent_users: int, default None
    • Limits the number of concurrent users. If not specified there will be no limit to the number of users.
  • max_login_attempts: int, default None
    • Limits the number of failed login attempts. If not specified there will be no limit to the number of failed login attempts.
  • fields: dict, default {'Form name':'Login', 'Username':'Username', 'Password':'Password', 'Login':'Login'}
    • Customizes the text of headers, buttons and other fields.
  • clear_on_submit: bool, default False
    • Specifies the clear on submit setting, True: clears inputs on submit, False: keeps inputs on submit.

很明显,我们的传参是有问题的,这里我是这么处理的: 

name, authentication_status, username = authenticator.login('main',None,None,{'Form name':'Login', 'Username':'Username', 'Password':'Password', 'Login':'Login'},False)  

运行后,登录成功!

  • 4
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值