Remove url field from Course model? and use get_absolute_url method

remotes/origin/hasaccess
Ivlev Denis 8 years ago
parent 3cb7c327a5
commit b89c4a86d2
  1. 17
      apps/course/migrations/0027_remove_course_url.py
  2. 10
      apps/course/models.py

@ -0,0 +1,17 @@
# Generated by Django 2.0.2 on 2018-02-09 08:16
from django.db import migrations
class Migration(migrations.Migration):
dependencies = [
('course', '0026_auto_20180208_1053'),
]
operations = [
migrations.RemoveField(
model_name='course',
name='url',
),
]

@ -2,7 +2,7 @@ import arrow
from django.db import models
from django.utils import timezone
from django.contrib.auth import get_user_model
from django.urls import reverse_lazy
from polymorphic_tree.models import PolymorphicMPTTModel, PolymorphicTreeForeignKey
from .manager import CategoryQuerySet
@ -49,7 +49,6 @@ class Course(models.Model):
category = models.ForeignKey('Category', on_delete=models.PROTECT)
duration = models.IntegerField('Продолжительность курса', default=0)
is_featured = models.BooleanField(default=False)
url = models.URLField('Ссылка', default='')
status = models.PositiveSmallIntegerField('Статус', default=0, choices=STATUS_CHOICES)
likes = models.ManyToManyField(Like, blank=True)
materials = models.ManyToManyField('Material', blank=True)
@ -61,6 +60,13 @@ class Course(models.Model):
created_at = models.DateTimeField(auto_now_add=True)
update_at = models.DateTimeField(auto_now=True)
@property
def url(self):
return self.get_absolute_url()
def get_absolute_url(self):
return reverse_lazy('course', args=[self.id])
@property
def is_free(self):
if self.price:

Loading…
Cancel
Save