我正在尝试使用Flask创建一个Web应用程序,让用户上传文件并将其提供给其他用户.现在,我可以正确地将文件上传到upload_folder.但我似乎找不到让用户下载它的方法.
我将文件名的名称存储到数据库中.
我有一个服务于数据库对象的视图.我也可以删除它们.
@app.route('/dashboard', methods=['GET', 'POST'])
def dashboard():
problemes = Probleme.query.all()
if 'user' not in session:
return redirect(url_for('login'))
if request.method == 'POST':
delete = Probleme.query.filter_by(id=request.form['del_button']).first()
db.session.delete(delete)
db.session.commit()
return redirect(url_for('dashboard'))
return render_template('dashboard.html', problemes=problemes)
Run Code Online (Sandbox Code Playgroud)
在我的HTML中我有:
<td><a href="{{ url_for('download', filename=probleme.facture) }}">Facture</a></td>
Run Code Online (Sandbox Code Playgroud)
和下载视图:
@app.route('/uploads/<path:filename>', methods=['GET', 'POST'])
def download(filename):
return send_from_directory(directory=app.config['UPLOAD_FOLDER'], filename=filename)
Run Code Online (Sandbox Code Playgroud)
但它正在回归:
未找到
在服务器上找不到请求的URL.如果您手动输入了URL,请检查拼写,然后重试.
我只想将文件名链接到对象并让用户下载它(对于同一视图中的每个对象)
当我的页面完全加载时,我试图运行一个简单的 JavaScript 函数。例如这个函数:
<script type="text/javascript">
function changeSize() {
var el = document.getElementById("my-id");
el.style.height = "500px";
};
</script>
Run Code Online (Sandbox Code Playgroud)
我的页面有一个从外部 URL 检索的长时间加载(秒)脚本,该脚本呈现 html 正文中的主要内容。
我正在使用 Bootstrap,其中我的主体部分base.html是:
<body>
<div class="container-fluid">
{% block header %}{% endblock %}
{% block content %}{% endblock %}
{% block footer %}{% endblock %}
</div>
<!-- jQuery first, then Popper.js, then Bootstrap JS -->
<script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.3/umd/popper.min.js" integrity="sha384-ZMP7rVo3mIykV+2+9J3UJ46jBk0WLaUAdn689aCwoqbBJiSnjAK/l8WvCWPIPm49" crossorigin="anonymous"></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/js/bootstrap.min.js" integrity="sha384-ChfqqxuZUCnJSK3+MXmPNIyE6ZbWh2IMqE241rYiqJxyMiZ6OW/JmZQ5stwEULTy" crossorigin="anonymous"></script>
</body>
Run Code Online (Sandbox Code Playgroud)
内容块通过外部 html 文件加载,即:
{% extends 'base.html' %}
{% block header …Run Code Online (Sandbox Code Playgroud) 在最近的一个项目中,tsconfig.json我发现使用符号 的路径别名@。
{
"compilerOptions": {
"target": "es5",
...
"baseUrl": ".",
"paths": {
"@/components/*": ["components/*"],
"@/pages/*": ["pages/*"],
"@/styles/*": ["styles/*"],
...
}
},
"include": ["next-env.d.ts", "**/*.ts", "**/*.tsx", "jest.config.js"],
"exclude": ["node_modules"]
}
Run Code Online (Sandbox Code Playgroud)
~但在一些网络视频和文章中,我也看到了和等符号的用法#。
我的问题是:
在 TypeScript 文档和简单的网络搜索中找不到这个问题的答案。
我有一个元素数组:
const itemCurrent = document.createElement('div');
const itemNext = document.createElement('div');
Run Code Online (Sandbox Code Playgroud)
我创建了一个数组:
const itemsAll = [itemCurrent, itemNext];
Run Code Online (Sandbox Code Playgroud)
如何将它们全部插入到我的页面正文中?