Commit 52f04e63 authored by Roshan Rabinarayan's avatar Roshan Rabinarayan

change in upload view

parent 39f9dee4
No preview for this file type
# Generated by Django 2.2.7 on 2020-10-24 11:50
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('quiz', '0003_auto_20201024_0927'),
]
operations = [
migrations.AddField(
model_name='questions',
name='quizCode',
field=models.CharField(default='Code', max_length=100),
),
migrations.AlterField(
model_name='quiz',
name='quizCode',
field=models.CharField(default='Code', max_length=100),
),
]
# Generated by Django 2.2.7 on 2020-10-24 12:12
from django.db import migrations
class Migration(migrations.Migration):
dependencies = [
('quiz', '0004_auto_20201024_1150'),
]
operations = [
migrations.RemoveField(
model_name='quiz',
name='startTime',
),
]
...@@ -4,9 +4,9 @@ from django.db import models ...@@ -4,9 +4,9 @@ from django.db import models
from django.db import models from django.db import models
class quiz(models.Model): class quiz(models.Model):
quizId=models.AutoField(default=0, primary_key=True) #primary key quizId=models.AutoField(default=0, primary_key=True) #primary key
startTime=models.DateTimeField(auto_now_add=True) #startTime=models.DateTimeField(auto_now_add=True,default=datetime.datetime.now)
length=models.FloatField(max_length=10) length=models.FloatField(max_length=10)
quizCode=models.CharField(max_length=100) ##quiz Code set by instructor quizCode=models.CharField(max_length=100,default='Code') ##quiz Code set by instructor
quizDone=models.BooleanField(default=False) quizDone=models.BooleanField(default=False)
quizInfo=models.CharField(max_length=100,default="No Info Available") quizInfo=models.CharField(max_length=100,default="No Info Available")
quizInstructor=models.CharField(max_length=100,default="No Name") quizInstructor=models.CharField(max_length=100,default="No Name")
...@@ -23,6 +23,7 @@ class Questions(models.Model): ...@@ -23,6 +23,7 @@ class Questions(models.Model):
negative = models.FloatField(max_length=10,default=0) negative = models.FloatField(max_length=10,default=0)
explainations=models.TextField(max_length=1000,default='No Explaination Given') explainations=models.TextField(max_length=1000,default='No Explaination Given')
questionId=models.AutoField(primary_key=True,) questionId=models.AutoField(primary_key=True,)
quizCode =models.CharField(max_length=100,default='Code')
quizId=models.ForeignKey(quiz,to_field='quizId',on_delete=models.CASCADE)#unique quiz identification quizId=models.ForeignKey(quiz,to_field='quizId',on_delete=models.CASCADE)#unique quiz identification
class submission(models.Model): class submission(models.Model):
......
...@@ -7,6 +7,8 @@ from django.http import HttpResponseRedirect ...@@ -7,6 +7,8 @@ from django.http import HttpResponseRedirect
from .models import submission from .models import submission
from .models import cribs from .models import cribs
from . newQuiz import readCSV from . newQuiz import readCSV
from .models import quiz
from django.db.models import Max
import csv import csv
#for login #for login
from django.contrib.auth.models import User from django.contrib.auth.models import User
...@@ -101,9 +103,11 @@ def student(request): ...@@ -101,9 +103,11 @@ def student(request):
def upload_file(request): def upload_file(request):
uploaded=False uploaded=False
temp1='test' temp1='test'
q= quiz(length=90,quizCode='abcd',quizDone=False)
q.save()
form = UploadFileForm(request.POST, request.FILES) form = UploadFileForm(request.POST, request.FILES)
if request.method == 'POST' and form.is_valid(): if request.method == 'POST' and form.is_valid():
handle_uploaded_file(request.FILES['file']) handle_uploaded_file(request.FILES['file'],q)
uploaded=True uploaded=True
return HttpResponse('success') return HttpResponse('success')
...@@ -112,7 +116,7 @@ def upload_file(request): ...@@ -112,7 +116,7 @@ def upload_file(request):
def handle_uploaded_file(f): def handle_uploaded_file(f,q1):
with open('name.csv', 'wb+') as destination: with open('name.csv', 'wb+') as destination:
for chunk in f.chunks(): for chunk in f.chunks():
destination.write(chunk) destination.write(chunk)
...@@ -120,7 +124,7 @@ def handle_uploaded_file(f): ...@@ -120,7 +124,7 @@ def handle_uploaded_file(f):
rows=readCSV(destination) rows=readCSV(destination)
for row in rows: for row in rows:
q=Questions(question=row[0],option1=row[1],option2=row[2],option3=row[3],option4=row[4],answer=row[5],type=row[6],marks=int(row[7]),negative=float(row[8]),explainations=row[9],quizCode=row[10],quizId='0')#hardcoded quizid q=Questions(question=row[0],option1=row[1],option2=row[2],option3=row[3],option4=row[4],answer=row[5],type=row[6],marks=int(row[7]),negative=float(row[8]),explainations=row[9],quizCode=row[10],quizId=q1)#hardcoded quizid
q.save() q.save()
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment