如何制作 Python if 语句,区分 html 个元素

How can I make Python if statement, distinguish beetween html elements

我正在使用 Python Flask 制作网络应用程序。我有两个 Flask-WTF 可以在页面上编辑我的组件:

class WorkEDForm(FlaskForm):
    date = StringField("Date", validators=[DataRequired()])
    name = StringField("Name", validators=[DataRequired()])
    details = StringField("Details", validators=[DataRequired()])


class PersonalForm(FlaskForm):
    name = StringField("Name", validators=[DataRequired()])
    details = StringField("Details", validators=[DataRequired()])

这是我的 html 代码的一部分,与这些形式相关:

    {% for ed in education %}
    <div class="ed">
      <p>{{ed.date}}</p>
      <br>
      <h4>{{ed.schol_name}}</h4>
      <p>{{ed.details}}</p>
    </div>

    {% endfor %}

  </div>

  <div class="language-skills">
    <h2>Language Skills</h2>
    <hr>

    {% for language in languages %}
    <div class="language">
      <h4>{{language.language_name}}</h4>
      <p>{{language_name.details}}</p>
    </div>
    {% endfor %}

如您所见,我将所有数据都存储在 SQLAlchemy 数据库中,但我希望能够使用表单进行编辑或制作。我想制作一个允许我这样做的函数,但为了做到这一点,我必须在我的函数中创建一个正确的表单,因为 html 元素之一包含日期而另一个不包含。这是我的函数的 'skeleton' 以便更好地理解:

@app.route("/make", methods=["GET", "POST"])

    def make():
        # if this is element related to this form:
        #     create related form
        # else:
        #     but if its related to the second one create related form

if 语句是否有办法区分我要编辑或制作的 html 元素以创建正确的形式?

我不确定我是否正确理解了你的问题,但如果我理解了。您可以执行以下操作,根据发送此表单构建函数动态构建您的表单

def buildForm(include_date_boolean):
    class FormName(FlaskForm):
        name = StringField("Name")
        details = StringField("Name")
        pass

    if include_date_boolean:
        setattr(FormName, 'date', StringField(label="Date"))
    return FormName()