我是Flask的新手,我无法从select标签中获取值.我试过request.form['comp_select']返回一个错误的请求.但是,当我尝试使用时request.form.get('comp_select'),我的返回页面返回一个空白列表"[]".
我的HTML:
<form class="form-inline" action="{{ url_for('test') }}">
<div class="form-group">
<div class="input-group">
<span class="input-group-addon">Please select</span>
<select name="comp_select" class="selectpicker form-control">
{% for o in data %}
<option value="{{ o.name }}">{{ o.name }}</option>
{% endfor %}
</select>
</div>
<button type="submit" class="btn btn-default">Go</button>
</div>
</form>
Run Code Online (Sandbox Code Playgroud)
我的app.py:
@app.route("/test" , methods=['GET', 'POST'])
def test():
select = request.form.get('comp_select')
return(str(select)) # just to see what select is
Run Code Online (Sandbox Code Playgroud)
如果我的帖子格式化已关闭(也是Stack Overflow的新功能),请提前抱歉.
最近,在使用PyCharm时,我无法在代码中使用相对路径.例如,一个简单的open('test.txt', 'r')将无法工作 - 因此我确信该文件与运行的py文件存在于同一级别.PyCharm将返回此错误.
FileNotFoundError:[Errno 2]没有这样的文件或目录:
在StackOverflow上在线阅读答案后,我尝试了多种选择,包括:
test.txt到./test.txt这些选项都没有对我有用.有没有我可以告诉PyCharm刷新当前的工作目录(甚至可以看到它认为当前的工作目录在哪里)?
提前致谢!
编辑:我应该注意在终端窗口中运行脚本将起作用.这似乎是PyCharm而不是脚本的问题.
这里可能缺少一些简单的东西,但我的目标是从两个单独的矩阵绘制两个热图。这些矩阵具有不同的维度,但我希望每个单独绘制的图块在两个图形之间具有相同的物理测量值。然后,图的大小应取决于矩阵尺寸,因为图之间的图块大小将是恒定的。
这是两个不同大小的矩阵和我想要制作的图形的精简版本的示例。
mat_lg <- matrix(rexp(20, rate=.1), ncol = 5)
melt(mat_lg) %>%
ggplot(aes(x = Var1, y = Var2, fill = value)) +
geom_tile() +
theme_bw() +
coord_equal()
mat_sm <- matrix(rexp(12, rate = .1), ncol = 3)
melt(mat_sm) %>%
ggplot(aes(x = Var1, y = Var2, fill = value)) +
geom_tile() +
theme_bw() +
coord_equal()
Run Code Online (Sandbox Code Playgroud)
我已经尝试过 geom_tile 中的宽度/高度设置,但无法实现我的目标。也玩过 grid.arrange 以及facet_wrap 设置,但无济于事。
我的猜测是,我需要根据初始矩阵尺寸更改最终绘图大小,以获得具有相同物理测量值的图块。很高兴在此事上得到任何帮助!