python烧瓶浏览文件目录

 俞承豪那个男人- 发布于 2023-01-14 15:51
  • php
  • 是否可以使用flask来浏览带有文件的目录?

    我的代码似乎永远不会正常工作,因为字符串之间发生了奇怪的附加.

    此外,我不知道如何实现一种检查路径是文件还是文件夹.

    这是我的Flask app.route:

    @app.route('/files', defaults={'folder': None,'sub_folder': None}, methods=['GET'])
    @app.route('/files/', defaults={'sub_folder': None}, methods=['GET'])
    @app.route('/files//', methods=['GET'])
    
        def files(folder,sub_folder):
            basedir = 'files/'
            directory = ''
    
            if folder != None:
                directory = directory + '/' + folder
    
            if sub_folder != None:
                directory = directory + '/' + sub_folder
    
            files = os.listdir(basedir + directory)
    
            return render_template('files.html',files=files,directory=basedir + directory,currdir=directory)
    

    这是我的html模板,如果有人能给我一些指示,我将不胜感激!

    
        

    Files {{ currdir }}


    {% for name in files: %} {{ name }}

    {% endfor %} s.html',files=files,directory=basedir + directory,currdir=directory)

    vivekagr.. 12

    一个path转换器(文档链接)中的URL结构比硬编码的所有不同的可能路径结构更好.

    os.path.exists可用于检查路径是否有效,os.path.isfile以及分别os.path.isdir检查路径是文件还是目录.

    终点:

    @app.route('/', defaults={'req_path': ''})
    @app.route('/')
    def dir_listing(req_path):
        BASE_DIR = '/Users/vivek/Desktop'
    
        # Joining the base and the requested path
        abs_path = os.path.join(BASE_DIR, req_path)
    
        # Return 404 if path doesn't exist
        if not os.path.exists(abs_path):
            return abort(404)
    
        # Check if path is a file and serve
        if os.path.isfile(abs_path):
            return send_file(abs_path)
    
        # Show directory contents
        files = os.listdir(abs_path)
        return render_template('files.html', files=files)
    

    模板:

    
    

    注:abortsend_file职能从瓶进口.

    撰写答案
    今天,你开发时遇到什么问题呢?
    立即提问
    热门标签
    PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
    Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有