我如何编码我的views.py,以便表单数据存储在我的数据库中(/ admin)?

这是用户/员工请假的项目,管理员可以看到它。


models.py


from django.db import models

from django.contrib.auth.models import User


CHOICES = (('1','Earned Leave'),('2','Casual Leave'),('3','Sick Leave'),('4','Paid Leave'))


class Leave(models.Model):

    user = models.ForeignKey(User, on_delete = models.CASCADE, null =True)

    name = models.CharField(max_length = 50)

    employee_ID = models.CharField(max_length = 20)

    department = models.CharField(max_length = 15)

    designation = models.CharField(max_length = 15)

    type_of_leave = models.CharField(max_length = 15, choices = CHOICES, default = None)

    from_date = models.DateField()

    to_date = models.DateField()

    reporting_manager = models.CharField(max_length = 50, default = None)

    reason = models.CharField(max_length= 180)



    def __str__(self):

        return self.name

表格


from django import forms

from lrequests import models


CHOICES = (('1','Earned Leave'),('2','Casual Leave'),('3','Sick Leave'),('4','Paid Leave'))


class LeaveRequestForm(forms.ModelForm): 


    class Meta:

        fields = ("name", "employee_ID", "department", "designation", "type_of_leave", "from_date", "to_date", "reporting_manager", "reason")

        model = models.Leave

管理员


from django.contrib import admin

from . import models, forms



class LeaveAdmin(admin.ModelAdmin):

    form = forms.LeaveRequestForm


admin.site.register(models.Leave, LeaveAdmin)

在views.py文件中,我不确定如何编写代码以将数据存储在数据库中。使管理员可以查看从表单获取的数据。


views.py


from django.shortcuts import render

from django.http import HttpResponseRedirect

from .forms import LeaveRequestForm

from django.views.generic import TemplateView



def leaveRequest(request):

    form_class = LeaveRequestForm

    if request.method == "POST":

        form = LeaveRequestForm(request.POST)

        if form.is_valid():

            leave = form.save(commit = False)

        return HttpResponse("Sucessfully submitted")

    else:

        return render(request, "request_form.html", {'form' : form_class})



精慕HU
浏览 165回答 3
3回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python