2017-01-01 60 views
1

我想在Django中建立一个简单的登陆页面,允许用户注册一个电子邮件通讯。我使用这个千篇一律的模板 - https://github.com/Parbhat/cookiecutter-django-foundation - 因为它集成了跳跃基础6。Django 1.10表单域使用基础6不显示模板

挑战在于表单字段未显示在模板中。任何帮助,将不胜感激。

我的models.py是:

class Subscribe(models.Model): 
    email = models.EmailField() 
    subscription_status = models.BooleanField(default=True) 
    create_date = models.DateTimeField(auto_now_add = True, auto_now = False) 
    update_date = models.DateTimeField(auto_now_add = False, auto_now = True) 

    def __unicode__(self): 
     return self.email 

我forms.py是:

from django import forms 
from .models import Subscribe 

class SubscribeForm(forms.ModelForm): 
    class Meta: 
     model = Subscribe 
     fields = ('email',) 

我views.py是:

from django.shortcuts import render 

from subscribers.forms import EmailForm, SubscribeForm 
from .models import Subscribe 


def home(request): 

    form = SubscribeForm(request.POST or None) 
    if form.is_valid(): 
     new_join = form.save(commit=False) 
     #we might need to do something here. 
     email = form.cleaned_data['email'] 
     new_join_old, created = Subscribe.objects.get_or_create(email=email) 
     #new_join.save() 

    context = {"form": form} 
    template = "pages/home.html" 
    return render(request, template, context) 

我的模板是:

{% extends "base.html" %} 

{% load foundation_formtags %} 
{% block content %} 


    <section class="hero"> 
    <!-- HERO SECTION --> 
     <div class="homebox"> 
      <div class="wrap"> 
       <p>Lorem Ipsum</p> 
       <form class="form" method="post" action=""> {% csrf_token %} 
        {{ form|as_foundation }} 
        <input type='submit' value='Subscribe' class='btn' /> 
       </form> 
      </div> 
     </div> 
    </section> 

我的urls.py是:

# -*- coding: utf-8 -*- 
from __future__ import absolute_import, unicode_literals 

from django.conf.urls import url 

from . import views 
from subscribes.views import home 

urlpatterns = [ 
    url(r'^$', home, name='home'), 

] 

谢谢!

+0

我从来没有使用Django的基础,但如何改变表单字段'栏=“__all __”' –

+0

难道形式显示(无基础造型),如果你在模板中使用“{{form}}”? – Alasdair

回答