无法访问面板文件输入小部件中选定的文件名

问题描述 投票:0回答:1

我正在使用 python Panel FileInput 小部件 (panel==0.13.0) 上传文件。上传有效,但我找不到访问上传文件名的方法。但是,选择文件后,小部件会在其旁边显示文件名,但文件名不包含在对象中,也不包含在文件名中……

使用 file_input.get_param_values(),我会得到 filename=None...

import panel as pn

class WidgetManager:
    def __init__(self):
        self.load_row = self.load_file_widget()

    def load_file_widget(self):
        # Create a row of widgets for file load
        self.file_input = pn.widgets.FileInput(accept='.csv')
        load_row = pn.Row(self.file_input)
        print(self.file_input.filename)
        return load_row

# Create an instance of the WidgetManager class 
widget_manager = WidgetManager()

# Create a FastList dashboard and add the widgets to it 
dashboard = pn.Column(widget_manager.load_row)

# Show the dashboard 
dashboard.show()

知道如何访问上传的文件名吗?

python widget bokeh panel
1个回答
0
投票

来自 Bokeh 作者:

文件位置不可用。这是浏览器级别的限制。这是一种安全措施,以避免泄露主机文件系统的详细信息。

您可以参考以下讨论:

https://discourse.bokeh.org/t/get-string-of-file-location-from-file-input-widget/6755

此外,您可以从 Bokeh 参考中找到它:

https://docs.bokeh.org/en/latest/docs/reference/models/widgets/inputs.html#bokeh.models.FileInput.filename

© www.soinside.com 2019 - 2024. All rights reserved.