From 3b75b411cca2c66b26329d5e1cd9084541869cf5 Mon Sep 17 00:00:00 2001 From: dhruvhacks Date: Tue, 29 May 2018 19:19:19 +0530 Subject: [PATCH 1/2] Newsletters models and migration files added. --- newsletters/migrations/0001_initial.py | 33 ++++++++++++++++++++++++++ newsletters/migrations/__init__.py | 0 newsletters/models.py | 29 ++++++++++++++++++++++ 3 files changed, 62 insertions(+) create mode 100644 newsletters/migrations/0001_initial.py create mode 100644 newsletters/migrations/__init__.py create mode 100644 newsletters/models.py diff --git a/newsletters/migrations/0001_initial.py b/newsletters/migrations/0001_initial.py new file mode 100644 index 0000000..680f7d2 --- /dev/null +++ b/newsletters/migrations/0001_initial.py @@ -0,0 +1,33 @@ +# -*- coding: utf-8 -*- +from __future__ import unicode_literals + +from django.db import models, migrations +from django.conf import settings + + +class Migration(migrations.Migration): + + dependencies = [ + migrations.swappable_dependency(settings.AUTH_USER_MODEL), + ] + + operations = [ + migrations.CreateModel( + name='department', + fields=[ + ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)), + ('department', models.CharField(max_length=50)), + ], + ), + migrations.CreateModel( + name='papers', + fields=[ + ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)), + ('name', models.CharField(max_length=25)), + ('year', models.DateField()), + ('paper', models.FileField(upload_to=b'newsletters')), + ('department', models.ForeignKey(to='newsletters.department')), + ('uploaded_by', models.ForeignKey(to=settings.AUTH_USER_MODEL)), + ], + ), + ] diff --git a/newsletters/migrations/__init__.py b/newsletters/migrations/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/newsletters/models.py b/newsletters/models.py new file mode 100644 index 0000000..ed09b71 --- /dev/null +++ b/newsletters/models.py @@ -0,0 +1,29 @@ +from django.db import models +from django.contrib.auth.models import User + + +class department(models.Model): + ''' + Stores the detail of department linked with its newsletters + ''' + department = models.CharField(max_length=50, + blank=False, + null=False) + + def __unicode__(self): + return "%s" % (self.department) + + +class papers(models.Model): + ''' + Stores the pdfs of newsletters + ''' + name = models.CharField(null=False, + max_length=25) + uploaded_by = models.ForeignKey(User) + year = models.DateField() + paper = models.FileField(upload_to="newsletters", blank=False, null=False) + department = models.ForeignKey(department) + + def __unicode__(self): + return "%s" % (self.name) From ff36cb73626e3274f1e28541cc027f2ed307d028 Mon Sep 17 00:00:00 2001 From: dhruvhacks Date: Sat, 2 Jun 2018 04:22:46 +0530 Subject: [PATCH 2/2] minor changes --- newsletters/migrations/0001_initial.py | 11 ++++++----- newsletters/models.py | 24 ++++++++++++++++++------ 2 files changed, 24 insertions(+), 11 deletions(-) diff --git a/newsletters/migrations/0001_initial.py b/newsletters/migrations/0001_initial.py index 680f7d2..41b4444 100644 --- a/newsletters/migrations/0001_initial.py +++ b/newsletters/migrations/0001_initial.py @@ -2,13 +2,12 @@ from __future__ import unicode_literals from django.db import models, migrations -from django.conf import settings class Migration(migrations.Migration): dependencies = [ - migrations.swappable_dependency(settings.AUTH_USER_MODEL), + ('profiles', '0002_auto_20170918_2235'), ] operations = [ @@ -20,14 +19,16 @@ class Migration(migrations.Migration): ], ), migrations.CreateModel( - name='papers', + name='newsletters', fields=[ ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)), - ('name', models.CharField(max_length=25)), + ('title', models.CharField(max_length=25)), ('year', models.DateField()), ('paper', models.FileField(upload_to=b'newsletters')), + ('created_at', models.DateTimeField()), + ('modified_at', models.DateTimeField()), ('department', models.ForeignKey(to='newsletters.department')), - ('uploaded_by', models.ForeignKey(to=settings.AUTH_USER_MODEL)), + ('uploaded_by', models.ForeignKey(to='profiles.FacultyDetail')), ], ), ] diff --git a/newsletters/models.py b/newsletters/models.py index ed09b71..982e42e 100644 --- a/newsletters/models.py +++ b/newsletters/models.py @@ -1,5 +1,6 @@ -from django.db import models from django.contrib.auth.models import User +from django.db import models +from django.utils import timezone class department(models.Model): @@ -14,16 +15,27 @@ def __unicode__(self): return "%s" % (self.department) -class papers(models.Model): +class newsletters(models.Model): ''' Stores the pdfs of newsletters ''' - name = models.CharField(null=False, - max_length=25) + title = models.CharField(null=False, + max_length=25) uploaded_by = models.ForeignKey(User) year = models.DateField() - paper = models.FileField(upload_to="newsletters", blank=False, null=False) + paper = models.FileField(upload_to="newsletters", + blank=False, + null=False) department = models.ForeignKey(department) + created_at = models.DateTimeField() + modified_at = models.DateTimeField() + + def create_newsletter(self): + self.created_at = timezone.now() + self.modified_at = timezone.now() + + def modify_newsletter(self): + self.modified_at = timezone.now() def __unicode__(self): - return "%s" % (self.name) + return "%s" % (self.title)