Program 7
Develop a Model form for student that contains his topic chosen for project, languages used and duration with a model called project.
views.py
from django.shortcuts import render
from .forms import ProjectForm
from django.http import HttpResponse
# Create your views here.
def insertproject(request):
if request.method == 'POST':
form = ProjectForm(request.POST)
if form.is_valid():
form.save()
return HttpResponse("Record inserted successfully")
form = ProjectForm()
return render(request, 'insertproject.html', {'form': form})
urls.py
from django.urls import path
from . import views
urlpatterns = [
path('projectreg', views.insertproject)
]
models.py
from django.db import models
# Create your models here.
# Develop a Model form for student that contains his topic chosen for project, languages used and
# duration with a model called project.
class Student(models.Model):
usn=models.CharField(max_length=10, primary_key=True)
name=models.CharField(max_length=30)
sem=models.IntegerField()
class Project(models.Model):
topic=models.CharField(max_length=30)
languages=models.CharField(max_length=30)
duration=models.IntegerField()
student=models.ForeignKey(Student,on_delete=models.CASCADE)
forms.py
# Develop a Model form for student that contains his topic chosen for project, languages used and
# duration with a model called project.
from django import forms
from .models import Project
class ProjectForm(forms.ModelForm):
class Meta:
model = Project
fields = '__all__'
admin.py
from django.contrib import admin
from .models import Project, Student
# Register your models here.
class P(admin.ModelAdmin):
list_display = ('student','duration','languages','topic')
admin.site.register(Project, P)
admin.site.register(Student)
templates/insertproject.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>project insert</title>
</head>
<body>
<form method="POST" action="">
{% csrf_token %}
<table>
{{ form.as_table }}
<tr>
<td><input type="submit" value="Insert" /></td>
</tr>
</table>
</form>
</body>
</html>