You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python3.11+Plaid19.0.0集成Django时无法导入Client类求助

解决Plaid v19.0.0中ImportError: cannot import name 'Client' from 'plaid'的问题

你的问题根源是Plaid Python SDK v19.0.0已废弃旧的Client类,从你提供的__init__.py也能看到,当前SDK导出的是ApiClient、Configuration这类新类,旧版Client已被移除。

直接按以下步骤修改代码即可解决:

1. 替换导入语句

把原代码中的from plaid import Client替换为:

from plaid import ApiClient, Configuration, Environment
from plaid.api.link_token_api import LinkTokenApi

2. 修改客户端初始化逻辑

旧版Client的初始化方式不再适用,需要先配置Configuration实例,再创建ApiClient:

# 初始化配置
configuration = Configuration(
    client_id=PLAID_CLIENT_ID,
    secret=PLAID_SECRET,
    host=Environment[PLAID_ENV.upper()]  # PLAID_ENV需为sandbox/development/production之一,转大写匹配枚举
)
# 创建ApiClient实例
client = ApiClient(configuration)

旧版链式调用client.Link.Token.create需替换为对应API类的调用:

link_token_api = LinkTokenApi(client)
link_token_create_response = link_token_api.link_token_create({
    "user": {
        "client_user_id": str(request.user.id)  # Plaid要求client_user_id为字符串类型,需转换
    },
    "products": ["transactions"]
})
# 获取link_token改为属性访问
link_token = link_token_create_response.link_token

修改后的完整代码示例

from plaid import ApiClient, Configuration, Environment
from plaid.api.link_token_api import LinkTokenApi
from django.shortcuts import render, redirect

def plaid_link_view(request):
    # 初始化Plaid配置和客户端
    configuration = Configuration(
        client_id=PLAID_CLIENT_ID,
        secret=PLAID_SECRET,
        host=Environment[PLAID_ENV.upper()]
    )
    client = ApiClient(configuration)

    # 创建Link token
    link_token_api = LinkTokenApi(client)
    link_token_create_response = link_token_api.link_token_create({
        "user": {
            "client_user_id": str(request.user.id)
        },
        "products": ["transactions"]
    })
    link_token = link_token_create_response.link_token

    context = {
        'link_token': link_token,
    }
    return render(request, 'plaid_link.html', context)

额外注意事项

  • 确认PLAID_ENV的值是sandbox、development或production中的一个,转大写后才能匹配Environment枚举成员
  • 用pip show plaid验证虚拟环境中安装的确实是v19.0.0版本

内容的提问来源于stack exchange,提问作者samuel jakshtis

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.28 16:15:33