You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

49 lines
1.5 KiB

from django.db import models
def photo_filename(instance, filename):
from slugify import slugify_filename
return 'photo_uploads/' + slugify_filename(filename)
class Banner(models.Model):
title = models.CharField(
'Альтернативный текст', max_length=256, blank=False, null=False)
image = models.ImageField('Баннер', upload_to=photo_filename)
link = models.CharField(
'Ссылка', max_length=1024, blank=False, null=False)
is_active = models.BooleanField('Публиковать', default=True)
def __str__(self):
return self.title
STARS_CHOICES = (
(1, 1),
(2, 2),
(3, 3),
(4, 4),
(5, 5)
)
class Feedback(models.Model):
created = models.DateTimeField('Дата и время', auto_now_add=True, editable=False)
name = models.CharField('Имя', max_length=45, null=False, blank=False)
email = models.EmailField('Email (не будет опубликован)', null=False, blank=False)
text = models.TextField('Комментарий', null=False, blank=False)
stars = models.IntegerField('Оценка', default=5, choices=STARS_CHOICES)
# news = models.ForeignKey(News, related_name='comments')
class Meta:
verbose_name = 'отзыв о сайте'
verbose_name_plural = 'отзывы о сайте'
def __str__(self):
return '{}: {}'.format(self.name, self.text)
class ProductsUpdate(models.Model):
created = models.DateTimeField('Дата и время', editable=False, auto_now=True)