繁体   English   中英

是否可以为 Pandas 数据框中的每一行创建唯一的 Django 路径?

[英]Is it possible to create a unique Django path for each row in a pandas dataframe?

我有一个 Django 项目,它在 Pandas 数据帧的每一行中获取信息并在页面上显示内容。 我想将数据框的每一行分成自己的页面,并具有自己的唯一路径。 数据框中的行太多,无法在 views.py 文件的上下文中对每一行进行硬编码。 我将如何为每一行创建一个唯一的 url 路径? 这甚至可能吗?

您可能想要做一些事情,比如将行作为参数嵌入到 url 中

喜欢

http://example.com/pandasdata/<row>

在您看来,您将从 url 中提取该行并仅从 pandas 数据框中提取该数据并显示该数据。

在您的应用程序urls.py文件中添加以下代码

path('pandasdata/< int:rowid >', views.row)

在您的应用程序 views.py 文件中,添加以下代码:

def row(request, rowid):
  # Add code to extract row and display here

确保两个地名应该相同(rowid)

上面的答案完全正确,正是我想要的。 我只想为将来遇到这个问题的任何人详细说明这一点。

如答案中所述,在urls.py文件中添加允许您提取行信息的路径。 就像是:

path("data/<int:row_id>/", views.app)

然后在您的views.py文件中,您将能够像这样访问行信息:

def func(request, row_id):
    row_id = row_id
    x = row_id
    df1 = df.iloc[x]
    return render(request, "data/app.html", {
        "col1": df1['col1'],
        "col2": df1['col2'],}

现在,当您访问像http://example.com/data/100/这样的路径时,它将从数据框中加载具有该索引的行,以及您在上下文中设置的列中的任何信息。 或者,如果该数字超出数据库中的行数,则会引发错误。

感谢 WombatPM 的原始答案!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM