烧瓶需要在主页上的表格

时间:2017-10-08 01:28:26

标签: python flask flask-wtforms flask-login

我正在寻找使用我网站主页上所需表格的烧瓶的某种示例,要求用户在被允许进入网站的其余部分之前选择一个选项。该表单用于从我的mongo db数据库中选择一个集合。在进入网站的其他任何地方之前,我需要知道用户想要使用的集合。一旦完成,我需要确保我可以在我的网站上的其他路线和视图中使用此信息。

1 个答案:

答案 0 :(得分:1)

您想要的是实施登录基础架构。

使用flask,你有一个基本模板,其他每个模板都是extending,你可以做的如下:

base.html

{% if current_user.is_authenticated %}
    <content>
        {% block content %}
        {% endblock %}
    </content>  
{% else %}
    <login-form>
        {% block content %}
        {% endblock %}
    </login-form>
{% endif %}

使用此代码,内容仅显示,并且仅在用户通过身份验证时显示。在login-form HTML中,您应该有一个form来询问验证用户所需的凭据,然后允许他们访问该网站的其余部分。

在其他模板文件中,您继续使用相同的做法:

dashboard.html

{% extends 'base.html' %}
{% block content %}
  <YOUR HTML CONTENT>
{% endblock %}

dashboard.html的内容仅向用户显示,如果他们已登录(current_user.is_authenticated = True

这是因为dashboard.html显示在content base.html块内is_authenticated仅在满足该条件时显示或呈现。

您可以使用其他任何内容代替public void SampleMethod() { DateTime anotherDateTime = DateTime.Today.AddDays(-10); if ((DateTime.Now-anotherDateTime).TotalDays>10) { } } public void SampleMethod1(DateTime dateTimeNow) { DateTime anotherDateTime = DateTime.Today.AddDays(-10); if ((dateTimeNow - anotherDateTime).TotalDays > 10) { } } ,例如正在选择的集合或类似的内容。这样做的程序是一样的。