Django REST Framework 从 API 响应中的超链接呈现结果

Django REST Framework Render a result from an hyperlink in API response

我正在构建一个带有 DRF/React 堆栈的应用程序,但我遇到了一些问题。

我正在使用 HyperlinkedModelSerializer 以便能够使用给定的 link 轻松发出 GET 请求。不太乐观的是,我无法轻易查询结果。

这是我从 API

获得的 json 对象的示例
[
    {
        "url": "http://localhost:8000/session/3/",
        "session_start": "01:00:17.234060",
        "nb_person": 1,
        [...]
        "client": "http://localhost:8000/client/1/"
    }
]

我想在我的模板中呈现一个数组。虽然,我想显示我从 client link.

中获得的客户名字和姓氏
    function GetContactFromAPI(url)
    {
        var name = ""
        axios.get(url).then(response => {
            const data = response.data
            name = `${data.firstname} ${data.lastnom}`
            return name
        })
        return name
    }

    return (
        <div>
            <table>
                <thead>
                    <tr>
                        <th>Client</th>
                        <th>Nb Pers.</th>
                        <th>Starting time</th>
                    </tr>
                </thead>
                <tbody>
                    {sessions.map((session, index) => {
                        return (
                            <tr key={index}>
                                <td>{GetContactFromAPI(session.client)}</td>
                                <td>{session.nb_person}</td>
                                <td>{session.session_start}</td>
                            </tr>
                        )
                    })}
                </tbody>
            </table>
        </div>
    );

我想我对sync/async有一些误解,无法呈现我需要的结果。您有解决此需求的想法吗?

我正在考虑获取客户名单并获得我需要的客户。但是我想避免这个可能比需要的更大的请求(我有超过 4 万个客户)。

提前致谢

我可能需要查看客户字段所在的序列化程序,但您需要做的是为客户字段创建一个嵌套关系。尝试这样做:

客户端 = ClientSerializer()

参考documentation here