Renamed some stuff

This commit is contained in:
Zak Timson
2017-08-19 00:15:48 -04:00
parent 02288ef5fd
commit 77b44251d0
9 changed files with 6 additions and 6 deletions

0
newsletters/__init__.py Normal file
View File

32
newsletters/admin.py Normal file
View File

@ -0,0 +1,32 @@
from django.contrib import admin
from django.utils import timezone
from .models import Newsletter, Subscriber
admin.site.register(Subscriber)
@admin.register(Newsletter)
class NewsletterAdmin(admin.ModelAdmin):
list_display = ['subject', 'created', 'publish']
search_fields = ['subject', 'created', 'publish']
def get_form(self, request, obj=None, **kwargs):
if obj:
self.fields = ['creator', 'subject', 'body', 'publish']
if obj.publish < timezone.now():
self.readonly_fields = ['creator', 'subject', 'body', 'publish']
else:
self.readonly_fields = ['creator']
else:
self.fields = ['subject', 'body', 'publish']
self.readonly_fields = []
return super(NewsletterAdmin, self).get_form(request, obj, **kwargs)
def save_model(self, request, instance, form, change):
user = request.user
instance = form.save(commit=False)
instance.creator = user
instance.save()
return instance

5
newsletters/apps.py Normal file
View File

@ -0,0 +1,5 @@
from django.apps import AppConfig
class NewslettersConfig(AppConfig):
name = 'newsletters'

21
newsletters/models.py Normal file
View File

@ -0,0 +1,21 @@
from django.db import models
from django.contrib.auth.admin import User
from django.utils.timezone import now
class Newsletter(models.Model):
body = models.TextField()
created = models.DateTimeField(auto_now_add=True)
creator = models.ForeignKey(User)
publish = models.DateTimeField(default=now())
subject = models.CharField(max_length=255)
def __str__(self):
return self.subject
class Subscriber(models.Model):
email = models.EmailField()
def __str__(self):
return self.email

3
newsletters/tests.py Normal file
View File

@ -0,0 +1,3 @@
from django.test import TestCase
# Create your tests here.

3
newsletters/views.py Normal file
View File

@ -0,0 +1,3 @@
from django.shortcuts import render
# Create your views here.