Commit 4703b408 by Bessie Steinberg

Added Digital Course Bundle

parent 1efd2cbd
...@@ -109,6 +109,18 @@ class CourseRunAdmin(admin.ModelAdmin): ...@@ -109,6 +109,18 @@ class CourseRunAdmin(admin.ModelAdmin):
messages.add_message(request, messages.ERROR, msg) messages.add_message(request, messages.ERROR, msg)
@admin.register(DigitalBookBundle)
class DigitalBookBundleAdmin(admin.ModelAdmin):
list_display = (
'id',
'uuid',
'title',
'book_key',
'course'
)
raw_id_fields = ('course',)
@admin.register(Program) @admin.register(Program)
class ProgramAdmin(admin.ModelAdmin): class ProgramAdmin(admin.ModelAdmin):
form = ProgramAdminForm form = ProgramAdminForm
......
# -*- coding: utf-8 -*-
# Generated by Django 1.11.3 on 2018-03-05 22:59
from __future__ import unicode_literals
from django.db import migrations, models
import django.db.models.deletion
import django_extensions.db.fields
import uuid
class Migration(migrations.Migration):
dependencies = [
('course_metadata', '0077_auto_20180131_1956'),
]
operations = [
migrations.CreateModel(
name='DigitalBookBundle',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('created', django_extensions.db.fields.CreationDateTimeField(auto_now_add=True, verbose_name='created')),
('modified', django_extensions.db.fields.ModificationDateTimeField(auto_now=True, verbose_name='modified')),
('uuid', models.UUIDField(blank=True, default=uuid.uuid4, editable=False, unique=True, verbose_name='UUID')),
('title', models.CharField(help_text='The user-facing display title for this Digital Book Bundle', max_length=255, unique=True)),
('book_key', models.CharField(max_length=255)),
('course', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='course_metadata.Course')),
],
options={
'get_latest_by': 'modified',
'abstract': False,
'ordering': ('-modified', '-created'),
},
),
]
...@@ -917,6 +917,28 @@ class ProgramType(TimeStampedModel): ...@@ -917,6 +917,28 @@ class ProgramType(TimeStampedModel):
return self.name return self.name
class DigitalBookBundle(TimeStampedModel):
# TODO: is this an okay assumption to make?
# assumes 1 course and 1 book
uuid = models.UUIDField(
blank=True,
default=uuid4,
editable=False,
unique=True,
verbose_name=_('UUID')
)
title = models.CharField(
help_text=_('The user-facing display title for this Digital Book Bundle'),
max_length=255,
unique=True
)
#TODO: replace with foreign key
book_key = models.CharField(max_length=255)
#TODO: we may one day want to make this a many to many relationship
#TODO: should it be a course or a course run?
course = models.ForeignKey(Course)
class Program(TimeStampedModel): class Program(TimeStampedModel):
uuid = models.UUIDField(blank=True, default=uuid4, editable=False, unique=True, verbose_name=_('UUID')) uuid = models.UUIDField(blank=True, default=uuid4, editable=False, unique=True, verbose_name=_('UUID'))
title = models.CharField( title = models.CharField(
......
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