23 lines
1.0 KiB
Python
23 lines
1.0 KiB
Python
from django.db import models
|
|
|
|
from common.models.baseModels import BaseModel
|
|
|
|
from django.contrib.postgres.fields import ArrayField
|
|
from django.conf import settings
|
|
|
|
from users.models import User
|
|
|
|
|
|
class Portfolio(BaseModel):
|
|
title = models.CharField(max_length=20)
|
|
category = ArrayField(models.CharField(max_length=20), default=list)
|
|
is_published = models.BooleanField(default=False)
|
|
view_count = models.IntegerField(default=0)
|
|
like_count = models.IntegerField(default=0)
|
|
scrap_count = models.IntegerField(default=0)
|
|
is_represent = models.BooleanField(default=False)
|
|
thumbnail = models.ImageField(upload_to='', blank=True)
|
|
code_id = models.CharField(max_length=26, blank=True)
|
|
owner = models.ForeignKey(settings.AUTH_USER_MODEL, on_delete=models.CASCADE, related_name='owned_portfolios', to_field="id")
|
|
likers = models.ManyToManyField(settings.AUTH_USER_MODEL, related_name='liked_portfolios', blank=True)
|
|
scrappers = models.ManyToManyField(settings.AUTH_USER_MODEL, related_name='scrapped_portfolios', blank=True) |