【问题标题】:How to connect html fields in django forms如何在 django 表单中连接 html 字段
【发布时间】:2018-03-22 07:54:55
【问题描述】:

这是我正在尝试建立模型和 html 字段之间的连接的引导 html 页面。 联系方式.html

{% 从静态文件加载静态文件 %}

    <!DOCTYPE html>
    <html lang="en">

      <head>
        <style>
          body{
            background: url('{% static "img/new4.jpg" %}') no-repeat center fixed;
            - webkit- background: cover;
            - moz - background: cover;
            - o - background: cover;
                  background-size: cover;
          }

          </style>


        <meta charset="utf-8">
        <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
        <meta name="description" content="">
        <meta name="author" content="">

        <title>Personality Leading.com</title>

        <!-- Bootstrap core CSS -->
        <link href="{% static 'vendor/bootstrap/css/bootstrap.min.css' %}" rel="stylesheet">
        <!-- <link rel="stylesheet" type="text/css" href="{% static 'vendor/bootstrap/css/Custom' %}"> -->
        <link rel="stylesheet" type="text/css" href="{% static 'vendor/bootstrap/css/Custom.css' %}">

        <!-- Custom fonts for this template -->
        <link href="{% static 'vendor/font-awesome/css/font-awesome.min.css' %}" rel="stylesheet" type="text/css">
        <link href='https://fonts.googleapis.com/css?family=Lora:400,700,400italic,700italic' rel='stylesheet' type='text/css'>
        <link href='https://fonts.googleapis.com/css?family=Open+Sans:300italic,400italic,600italic,700italic,800italic,400,300,600,700,800' rel='stylesheet' type='text/css'>

        <!-- Custom styles for this template -->
        <link href="{% static 'css/clean-blog.min.css' %}" rel="stylesheet">

      </head>

      <body>

    <!-- Navigation -->
    <div class="mynav">
      <div class="p-3 mb-2 bg-info text-white"><strong> PERSONALITY LEADING </strong></div>
      <nav class="navbar navbar-expand-lg navbar-light fixed-top" id="mainNav">
          <div class="container">
            <a class="navbar-brand" href="index.html"></a>
            <button class="navbar-toggler navbar-toggler-right" type="button" data-toggle="collapse" data-target="#navbarResponsive" aria-controls="navbarResponsive" aria-expanded="false" aria-label="Toggle navigation">
              Menu
              <i class="fa fa-bars"></i>
            </button>
            <div class="collapse navbar-collapse" id="navbarResponsive">
              <ul class="navbar-nav ml-auto">
                <li class="nav-item">
                  <a class="nav-link" href="/home/">Home</a>
                </li>
                <li class="nav-item">
                  <a class="nav-link" href="/about/">About</a>
                </li>
                <li class="nav-item">
                  <a class="nav-link" href="/services/">Services</a>
                </li>
                <li class="nav-item">
                  <a class="nav-link" href="/contact/">Contact</a>
                </li>
              </ul>
            </div>
          </div>
        </nav>
      </div>
    </div>

        <br>
        <br>
        <br>
        <br>
        <br>
        <br>
        <br>
        <br>


        <!-- Page Header -->
        <!-- <header class="masthead" style="background-image: url('img/contact-bg.jpg')"> -->
          <div class="overlay"></div>
          <div class="container">
            <div class="row">
              <div class="col-lg-8 col-md-10 mx-auto">
                <div class="page-heading">
                  <h1>Contact Us</h1>
                  <span class="subheading">Have questions? I have answers.</span>
                </div>
              </div>
            </div>
          </div>
        </header>


        <!-- Main Content -->
        <div class="container">
          <div class="row">
            <div class="col-lg-8 col-md-10 text-dark mx-auto">
              <p>Want to get in touch? Fill out the form below to send us a message and We will get back to you as soon as possible!</p>
              <form name="sentMessage" id="contactForm" novalidate>
                <form action="" method="POST">

                <div class="control-group">
                  <div class="form-group floating-label-form-group controls">
                    <label>Name</label>
                    <input type="text" class="form-control" placeholder="Name" id="name" required data-validation-required-message="Please enter your name.">
                    <p class="help-block text-danger"></p>

                  </div>
                </div>
                <div class="control-group">
                  <div class="form-group floating-label-form-group controls">
                    <label>Email Address</label>
                    <input type="email" class="form-control" placeholder="Email Address" id="email" required data-validation-required-message="Please enter your email address.">
                    <p class="help-block text-danger"></p>
                    {{forms.emailid}}
                  </div>
                </div>
                <div class="control-group">
                  <div class="form-group col-xs-12 floating-label-form-group controls">
                    <label>Phone Number</label>
                    <input type="tel" class="form-control" placeholder="Phone Number" id="phone" required data-validation-required-message="Please enter your phone number.">
                    <p class="help-block text-danger"></p>

                  </div>
                </div>
                <div class="control-group">
                  <div class="form-group floating-label-form-group controls">
                    <label>Message</label>
                    <textarea rows="5" class="form-control" placeholder="Message" id="message" required data-validation-required-message="Please enter a message."></textarea>
                    <p class="help-block text-danger"></p>


                  </div>
                </div>
                <br>
                <div id="success"></div>
                <div class="form-group">
                  <button type="submit" class="btn btn-primary" id="sendMessageButton" >Send</button>
                </div>
              </form>
            </form>
            </div>
          </div>
        </div>
        <div id="templatemo-contact">

                <p class="text-primary">

                  <h7><strong>Meet us<span> at our location</span> </strong></h7> </p> 
                <br>


                    <div class="contactHldr text-#0085a1">
                        <ul>


                              <strong>Personality Leading</strong><br>
                                (Online Jobs Guru Pvt.ltd)<br>
                                #169, 13th Main 1st Floor<br>
                                Aicoboo Nagar, 1st stage, BTM Layout<br>
                              Bangalore - 560029</p>
                              <h4>Locate us on Google maps</h4>
                              <a href="https://www.google.co.in/maps/place/Onlinejobsguru+Pvt.Ltd./@12.9167255,77.6087831,17z/data=!3m1!4b1!4m5!3m4!1s0x3bae14fc2c1a4461:0xa948622b989d82ff!8m2!3d12.9167203!4d77.6109718?hl=en"> <img src="{%static 'img/map.png' %}" width="150" height="114"><br>
                                <br>

                                <!-- <h5>Phone: 080 - 41250340</h5> -->
                            <p class="text-primary"><strong>Phone:</strong> 080 - 41250340</p>
                            <p class="text-light"><strong>Email:</strong> <br> <a href="mailto:info@personalityleading.com">info@personalityleading.com</a><br><a href="mailto:support@personalityleading.com">support@personalityleading.com</a></p>





        <hr>

        <!-- Footer -->
        <footer>
          <div class="container">
            <div class="row">
              <div class="col-lg-8 col-md-10 mx-auto">
                <ul class="list-inline text-center">
                  <li class="list-inline-item">
                    <a href="https://twitter.com/onlinejobsguruu">
                      <span class="fa-stack fa-lg">
                        <i class="fa fa-circle fa-stack-2x"></i>
                        <i class="fa fa-twitter fa-stack-1x fa-inverse"></i>
                      </span>
                    </a>
                  </li>
                  <li class="list-inline-item">
                    <a href="https://www.facebook.com/onlinejobsguru05/">
                      <span class="fa-stack fa-lg">
                        <i class="fa fa-circle fa-stack-2x"></i>
                        <i class="fa fa-facebook fa-stack-1x fa-inverse"></i>
                      </span>
                    </a>
                  </li>
                  <!-- <li class="list-inline-item">
                    <a href="#">
                      <span class="fa-stack fa-lg">
                        <i class="fa fa-circle fa-stack-2x"></i>
                        <i class="fa fa-github fa-stack-1x fa-inverse"></i>
                      </span>
                    </a>
                  </li> -->
                </ul>
                <p class="copyright text-light">© 2016 PERSONALITY LEADING, ALL RIGHTS RESERVED</p>
              </div>
            </div>
          </div>
        </footer>

        <!-- Bootstrap core JavaScript -->
        <script src="{% static 'vendor/jquery/jquery.min.js' %}"></script>
        <script src="{% static 'vendor/bootstrap/js/bootstrap.bundle.min.js' %}"></script>

        <!-- Contact Form JavaScript -->
        <script src="{% static 'js/jqBootstrapValidation.j' %}"></script>
        <script src="{% static 'js/contact_me.js' %}"></script>

        <!-- Custom scripts for this template -->
        <script src="{% static 'js/clean-blog.min.js' %}"></script>

      </body>

    </html>

这是我的forms.py

    from django import forms
    from .models import *

    class details_form(forms.ModelForm):
        name = forms.CharField(required=True, max_length=100)
        emailid = forms.EmailField( required=True, max_length=250)
        phone = forms. CharField(max_length=11)
        message = forms.CharField(widget=forms.Textarea())


        class Meta():
            model = user
            fields = ['name', 'emailid', 'phone', 'message']

如何在模型和 html 字段之间建立连接。当我尝试在字段中添加数据时,数据正在输入但未反映在管理面板中

【问题讨论】:

  • 你必须发送post请求,然后接收请求的数据并保存到数据库中。
  • 我必须在 html 文件中进行哪些更改才能在 forms.py 中连接我的模型
  • 是的,我正在保存表单
  • 发送的请求是否有效?检查响应的状态代码或检查表单错误。您应该考虑使用其内置方法呈现表单。例如{{ form.as_p }}。您的表单输入似乎没有适当的 name 属性。您也没有 CSRF 令牌。

标签: html django forms


【解决方案1】:

您的 HTML 表单格式不正确。您没有所需的 CRSF 令牌。您的表单输入似乎也缺少正确的 name 属性。

我强烈建议您使用表单的内置方法呈现您的表单,例如{{ form.as_p }}。这将确保表单输入对表单类的格式正确。

【讨论】:

    猜你喜欢
    • 2012-08-11
    • 1970-01-01
    • 1970-01-01
    • 2020-12-22
    • 1970-01-01
    • 2022-01-19
    • 2012-05-06
    • 2021-06-04
    • 1970-01-01
    相关资源
    最近更新 更多