问题:如何在Django管理页面中显示哪些用户通过网页上的表单\字段发送数据?!
P.S。我只是Django的初学者,所以我认为我的问题很容易解决,但现在我不知道怎么做。请不要严厉地评价我。我会很高兴任何关于它的例子或文章。 =)
forms.py
class TicketForms(forms.Form):
name = forms.CharField(max_length=120, required=True)
email = forms.EmailField(required=False)
department = forms.CharField(max_length=120, required=True)
room = forms.CharField(max_length=100, required=True)
comment = forms.CharField(required=True, widget=forms.Textarea)
models.py
from django.db import models
class Ticket(models.Model):
name = models.TextField(null=True, blank=True)
email = models.TextField(null=True, blank=True)
department = models.TextField(null=True, blank=True)
room = models.TextField(null=True, blank=True) # TextField cause room can be 408A as example
comment = models.TextField(null=True, blank=True)
def __str__(self): # __unicode__ on Python 2.7
return self.name
admin.py
from django.contrib import admin
from .models import Ticket
# Register your models here.
class Admin(admin.ModelAdmin):
class Meta:
model = Ticket
admin.site.register(Ticket, Admin)
答案 0 :(得分:1)
由于您有空管理页面,这意味着您尚未在管理界面中注册您的模型。只需转到与 models.py 相同的目录中的应用程序,您应该找到 admin.py ,如果不是,只需创建它并添加以下内容:
1。 的 admin.py 强>
from django.contrib import admin
from ticket.models import Ticket
admin.site.register(Ticket)
2.然后将您的应用添加到 settings.py :
INSTALLED_APPS = (
...
'tickets',
)
3.apply migration
python manage.py makemigrations
python manage.py migrate
现在您已在 views.py :
中准备好模型def home(request):
form = TicketForms(request.POST)
# validate your form
if form.is_valid():
Ticket.objects.create(**form.cleaned_data)
# return success url
else:
context = {'form': form}
render(request, 'ticket.html', context)
再次检查您的管理员,您会发现显示已保存的数据。
由于您是Django的新手,我建议您通过7个部分查看此官方django tutoriel。