From 9694bb41759e19c103a91dbb19ed8eefa2699e32 Mon Sep 17 00:00:00 2001 From: Jailson Dias Date: Wed, 14 Sep 2016 21:34:26 -0300 Subject: [PATCH] Refatoração dos modelos de cursos e categorias --- courses/migrations/0010_auto_20160914_2119.py | 42 ++++++++++++++++++++++++++++++++++++++++++ courses/migrations/0011_auto_20160914_2126.py | 49 +++++++++++++++++++++++++++++++++++++++++++++++++ courses/models.py | 22 +++++++++++----------- 3 files changed, 102 insertions(+), 11 deletions(-) create mode 100644 courses/migrations/0010_auto_20160914_2119.py create mode 100644 courses/migrations/0011_auto_20160914_2126.py diff --git a/courses/migrations/0010_auto_20160914_2119.py b/courses/migrations/0010_auto_20160914_2119.py new file mode 100644 index 0000000..bd8330a --- /dev/null +++ b/courses/migrations/0010_auto_20160914_2119.py @@ -0,0 +1,42 @@ +# -*- coding: utf-8 -*- +# Generated by Django 1.10 on 2016-09-15 00:19 +from __future__ import unicode_literals + +import autoslug.fields +from django.conf import settings +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + migrations.swappable_dependency(settings.AUTH_USER_MODEL), + ('courses', '0009_auto_20160908_1625'), + ] + + operations = [ + migrations.RemoveField( + model_name='course', + name='user', + ), + migrations.AddField( + model_name='course', + name='professors', + field=models.ManyToManyField(related_name='courses', to=settings.AUTH_USER_MODEL, verbose_name='Professors'), + ), + migrations.AlterField( + model_name='category', + name='slug', + field=autoslug.fields.AutoSlugField(editable=False, populate_from='name', unique=True, verbose_name='Slug'), + ), + migrations.AlterField( + model_name='course', + name='name', + field=models.CharField(max_length=100, verbose_name='Name'), + ), + migrations.AlterField( + model_name='course', + name='slug', + field=autoslug.fields.AutoSlugField(editable=False, populate_from='name', unique=True, verbose_name='Slug'), + ), + ] diff --git a/courses/migrations/0011_auto_20160914_2126.py b/courses/migrations/0011_auto_20160914_2126.py new file mode 100644 index 0000000..ca3e72b --- /dev/null +++ b/courses/migrations/0011_auto_20160914_2126.py @@ -0,0 +1,49 @@ +# -*- coding: utf-8 -*- +# Generated by Django 1.10 on 2016-09-15 00:26 +from __future__ import unicode_literals + +from django.conf import settings +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + ('courses', '0010_auto_20160914_2119'), + ] + + operations = [ + migrations.AlterModelOptions( + name='course', + options={'ordering': ('create_date', 'name'), 'verbose_name': 'Course', 'verbose_name_plural': 'Courses'}, + ), + migrations.AlterModelOptions( + name='subject', + options={'ordering': ('create_date', 'name'), 'verbose_name': 'Subject', 'verbose_name_plural': 'Subjects'}, + ), + migrations.AlterModelOptions( + name='topic', + options={'ordering': ('create_date', 'name'), 'verbose_name': 'Topic', 'verbose_name_plural': 'Topics'}, + ), + migrations.AlterField( + model_name='course', + name='category', + field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='courses.Category', verbose_name='Category'), + ), + migrations.AlterField( + model_name='course', + name='image', + field=models.ImageField(blank=True, upload_to='courses/', verbose_name='Image'), + ), + migrations.AlterField( + model_name='subject', + name='visible', + field=models.BooleanField(default=False, verbose_name='Visible'), + ), + migrations.AlterField( + model_name='topic', + name='owner', + field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='topics', to=settings.AUTH_USER_MODEL, verbose_name='Owner'), + ), + ] diff --git a/courses/models.py b/courses/models.py index 4919737..66d8b87 100644 --- a/courses/models.py +++ b/courses/models.py @@ -6,7 +6,7 @@ from users.models import User class Category(models.Model): name = models.CharField(_('Name'), max_length = 100, unique = True) - slug = models.SlugField(_('Slug'), max_length = 100) + slug = AutoSlugField(_("Slug"),populate_from='name',unique=True) create_date = models.DateField(_('Creation Date'), auto_now_add = True) class Meta: @@ -18,8 +18,8 @@ class Category(models.Model): class Course(models.Model): - name = models.CharField(_('Name'), max_length = 100, unique = True) - slug = models.SlugField(_('Slug'), max_length = 100) + name = models.CharField(_('Name'), max_length = 100) + slug = AutoSlugField(_("Slug"),populate_from='name',unique=True) objectivies = models.TextField(_('Objectivies'), blank = True) content = models.TextField(_('Content'), blank = True) max_students = models.PositiveIntegerField(_('Maximum Students'), blank = True) @@ -28,12 +28,12 @@ class Course(models.Model): end_register_date = models.DateField(_('Register Date (End)')) init_date = models.DateField(_('Begin of Course Date')) end_date = models.DateField(_('End of Course Date')) - image = models.ImageField(verbose_name = _('Image'), blank = True, upload_to = 'courses/', default = 'no_image.jpg') - category = models.ForeignKey(Category, verbose_name = _('Category'), default = 1) - user = models.ForeignKey(User, verbose_name = _('User'), null = True) + image = models.ImageField(verbose_name = _('Image'), blank = True, upload_to = 'courses/') + category = models.ForeignKey(Category, verbose_name = _('Category')) + professors = models.ManyToManyField(User,verbose_name=_('Professors'), related_name='courses') class Meta: - + ordering = ('create_date','name') verbose_name = _('Course') verbose_name_plural = _('Courses') @@ -45,7 +45,7 @@ class Subject(models.Model): name = models.CharField(_('Name'), max_length = 100) slug = AutoSlugField(_("Slug"),populate_from='name',unique=True) description = models.TextField(_('Description'), blank = True) - visible = models.BooleanField(_('Visible'), default = True, blank = True) + visible = models.BooleanField(_('Visible'), default = False) create_date = models.DateTimeField(_('Creation Date'), auto_now_add = True) update_date = models.DateTimeField(_('Date of last update'), auto_now=True) course = models.ForeignKey(Course, verbose_name = _('Course'), related_name="subjects") @@ -53,7 +53,7 @@ class Subject(models.Model): class Meta: - ordering = ('create_date',) + ordering = ('create_date','name') verbose_name = _('Subject') verbose_name_plural = _('Subjects') @@ -68,10 +68,10 @@ class Topic(models.Model): create_date = models.DateTimeField(_('Creation Date'), auto_now_add = True) update_date = models.DateTimeField(_('Date of last update'), auto_now=True) subject = models.ForeignKey(Subject, verbose_name = _('Subject'), related_name="topics") - owner = models.ForeignKey(User, verbose_name = _('Owner'), related_name="topics",default=1) + owner = models.ForeignKey(User, verbose_name = _('Owner'), related_name="topics") class Meta: - ordering = ('create_date',) + ordering = ('create_date','name') verbose_name = _('Topic') verbose_name_plural = _('Topics') -- libgit2 0.21.2