打印我的forms.py

时间:2014-11-06 17:19:36

标签: python django django-forms django-templates

我有一个应用程序,我想在我的页面上的forms.py中显示(unidra.html)。其实我有我的观点:

    from django.http import HttpResponse
    import string, random
    from dracoin.apps.home.forms import GenEggForm

    def get_random_string(size):    
        chars = string.ascii_letters + string.digits + string.punctuation
        return ''.join(random.choice(chars) for _ in range(size))

    def draegg_view(request):
        size = 40
        if request.method == 'POST':
            form = GenEggForm(request.POST.get('random_string'))        
        else:
            form = get_random_string(size)
        return render_to_response('synopticup/unidra.html', {'random_string': form}, context_instance=RequestContext(request))

my forms.py:

class GenEggForm(forms.Form):
    Key = forms.CharField(widget=forms.TextInput())

    def clean(self):
        return self.cleaned_data

和我的unidra.html

{% extends 'base.html' %}
{% block title %} Contact us!! {% endblock %}
{% block content %}
<form action='.' method='POST'>
{% csrf_token %}           
    {{ form.as_p }}
    <button type='submit'>Generar</button>
</form>
{% endblock %}

我的问题是我的页面(unidra.html)没有打印我的表单,我看不到我的表单。我可能会对我的表格做一个不好的声明。

如果我忽略某些事情,请提前道歉。

谢谢!

1 个答案:

答案 0 :(得分:1)

相反

form = get_random_string(size)

尝试

form = GenEggForm()

感谢karthikr,如果你想初始化表格,试试这个

form = GenEggForm(initial={'Key': get_random_string(size)})   

并将其渲染为模板

无需道歉,我们都从零开始学习