我想创建一个提供建议的SelectField,但仍然允许用户输入其他内容。
library(ggplot2)
library(dplyr)
# The dataset is provided in the gapminder library
library(gapminder)
data <- gapminder %>% filter(year=="2007") %>% dplyr::select(-year)
#Plot
data %>%
arrange(desc(pop)) %>%
mutate(country = factor(country, country)) %>%
ggplot(aes(x=gdpPercap, y=country, size=pop, color=continent)) +
geom_point(alpha=0.5) +
scale_y_discrete(guide = guide_axis(n.dodge=2))+
scale_size(range = c(.1, 24), name="Population (M)")+ facet_grid(cols = vars(continent))+
theme(axis.text.x = element_text(angle = 45, vjust = 0.5, hjust=1),
axis.text.y = element_text(size=7))
WTF文档建议将validate_choices设置为False可以做到这一点:
请注意validate_choice参数-通过将此参数设置为False,我们告诉SelectField跳过选择验证步骤,而是接受任何输入的选择,而无需检查它是否是给定选择之一。
但是,上面的数据不能输入或修改。这可能吗,还是我需要另一个“手动输入”字段? 或者,也许有一种方法可以使用JS在StringField中显示我的建议,类似于浏览器为地址等提供自动完成建议的方式吗?
答案 0 :(得分:0)
我不知道有什么办法。看来您和我处于相似的位置。但是,我确实有一个想法要分享,对您有用。
许多表单的下拉列表中的值为“其他”,如果您选择“其他”,则会出现另一个空框供您输入。您可以在wtforms中轻松实现此框。或者,您可以始终显示额外的框,然后检查是否具有自定义输入,如果他们确实选择了“其他”。