Files
atabackend/home/models.py
Beyhan Oğur d50f14bcb1 first commit
2026-04-26 22:20:45 +03:00

341 lines
15 KiB
Python
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
from autoslug import AutoSlugField
from django.db import models
from imagekit.models import ProcessedImageField
from tinymce.models import HTMLField
from core.utils import image_optimizer
# Create your models here.
class Tags(models.Model):
aktif = (
(True, 'Evet'),
(False, 'Hayır'),
)
tag = models.CharField(max_length=254, verbose_name="Post Tagları")
created_at = models.DateTimeField(auto_now_add=True, editable=False, verbose_name="Oluşturulma Tarihi")
updated_at = models.DateTimeField(auto_now=True, editable=False, verbose_name="Güncelleme Tarihi")
is_active = models.BooleanField(default=True, verbose_name='Yayındamı', choices=aktif)
class Meta:
ordering = ["-created_at"]
db_table = 'tags'
verbose_name_plural = "Post Tagları"
verbose_name = "Post Tagı"
def __str__(self):
return self.tag
class Home(models.Model):
aktif = (
(True, 'Evet'),
(False, 'Hayır'),
)
name = models.CharField(max_length=254, verbose_name="İsim Soyisim ")
title = models.CharField(max_length=254, verbose_name="Alt Yazi")
button1 = models.CharField(max_length=254, verbose_name="Button 1")
button2 = models.CharField(max_length=254, verbose_name="Button 2")
video = models.URLField(verbose_name="Video Url", null=True, blank=True,
default='https://www.youtube.com/watch?v=6zM4p_A0ISk')
keywords = models.CharField(max_length=254, verbose_name="Seo Kelimeleri Aralarına Virgül Koyunuz")
tags = models.ManyToManyField(Tags, verbose_name="Post Tagları", related_name='tags')
image = ProcessedImageField(**image_optimizer('uploads/post', 400, 400, 90, 'avif'), null=True, blank=True)
slug = AutoSlugField(populate_from='name', null=False, unique=True, editable=True, db_index=True, max_length=250,
blank=True)
created_at = models.DateTimeField(auto_now_add=True, editable=False, verbose_name="Oluşturulma Tarihi")
updated_at = models.DateTimeField(auto_now=True, editable=False, verbose_name="Güncelleme Tarihi")
is_active = models.BooleanField(default=False, verbose_name='Yayındamı ?', choices=aktif)
class Meta:
ordering = ["created_at"]
db_table = 'homes'
verbose_name_plural = "Homes"
verbose_name = "Home"
unique_together = ('slug',)
def get_slug(self):
slug = self.name.replace('ı', "i").replace('İ', 'i')
number = 1
while Home.objects.filter(slug=slug).exists():
slug = '{}-{}'.format(slug, number)
number += 1
return slug
def save(self, *args, **kwargs):
if not self.slug:
self.slug = self.get_slug()
super().save(*args, **kwargs)
def __str__(self):
return f"Homes: {self.name}"
class AboutMe(models.Model):
aktif = (
(True, 'Evet'),
(False, 'Hayır'),
)
title = models.CharField(max_length=254, verbose_name="Hakkımda")
image = ProcessedImageField(**image_optimizer('uploads/post', 400, 400, 90, 'avif'), null=True, blank=True)
image_sub = HTMLField(blank=True, null=True, verbose_name='Resim Altındaki Yazı İçeriği')
cv = models.FileField(upload_to='uploads/cv', null=True, blank=True)
birthday = models.CharField(max_length=254, verbose_name="Yaş Günü", null=True, blank=True)
city = models.CharField(max_length=254, verbose_name="Şehir", null=True, blank=True)
study = models.CharField(max_length=254, verbose_name="Okulun", null=True, blank=True)
website = models.CharField(max_length=254, verbose_name="Web Sitesi", null=True, blank=True)
phone = models.CharField(max_length=254, verbose_name="Telefon", null=True, blank=True)
age = models.CharField(max_length=5, verbose_name="Yaş", null=True, blank=True)
interests = models.CharField(max_length=254, verbose_name="İlgi alanları", null=True, blank=True)
degree = models.CharField(max_length=254, verbose_name="Derecelendirme", null=True, blank=True)
x = models.CharField(max_length=254, verbose_name="x", null=True, blank=True)
mail = models.CharField(max_length=254, verbose_name="E-Posta", null=True, blank=True)
done = models.IntegerField(verbose_name="Tamamlanan Projeler", null=True, blank=True)
project_done = models.CharField(max_length=254, verbose_name="Tamalangan Projeler", null=True, blank=True)
user_h = models.IntegerField(verbose_name="Mutlu Kullanıcı Sayısı", null=True, blank=True)
hapy_user = models.CharField(max_length=254, verbose_name="Mutlu Kullanıcı", null=True, blank=True)
great = models.IntegerField(verbose_name="Yorum Sayısı", null=True, blank=True)
great_reviews = models.CharField(max_length=254, verbose_name="Yorumlar", null=True, blank=True)
team = models.IntegerField(verbose_name="Destek Takımı Sayısı", null=True, blank=True)
support_team = models.CharField(max_length=254, verbose_name="Destek Takımı", null=True, blank=True)
slug = AutoSlugField(populate_from='name', null=False, unique=True, editable=True, db_index=True, max_length=250,
blank=True)
created_at = models.DateTimeField(auto_now_add=True, editable=False, verbose_name="Oluşturulma Tarihi")
updated_at = models.DateTimeField(auto_now=True, editable=False, verbose_name="Güncelleme Tarihi")
is_active = models.BooleanField(default=False, verbose_name='Hakkımda Yayındamı ?', choices=aktif)
counter_active = models.BooleanField(default=False, verbose_name='Sayaç Yayındamı ?', choices=aktif)
class Meta:
ordering = ["created_at"]
db_table = 'about'
verbose_name_plural = "About Me"
verbose_name = "About"
unique_together = ('slug',)
def get_slug(self):
slug = self.title.replace('ı', "i").replace('İ', 'i')
number = 1
while AboutMe.objects.filter(slug=slug).exists():
slug = '{}-{}'.format(slug, number)
number += 1
return slug
def save(self, *args, **kwargs):
if not self.slug:
self.slug = self.get_slug()
super().save(*args, **kwargs)
def __str__(self):
return f"About Me: {self.title}"
class MyService(models.Model):
aktif = (
(True, 'Evet'),
(False, 'Hayır'),
)
title = models.CharField(max_length=254, verbose_name="Servis Başlığı ")
content = HTMLField(blank=True, null=True, verbose_name='İçerik')
image = ProcessedImageField(**image_optimizer('uploads/services', 256, 256, 90, 'png'), null=True, blank=True)
slug = AutoSlugField(populate_from='name', null=False, unique=True, editable=True, db_index=True, max_length=250,
blank=True)
created_at = models.DateTimeField(auto_now_add=True, editable=False, verbose_name="Oluşturulma Tarihi")
updated_at = models.DateTimeField(auto_now=True, editable=False, verbose_name="Güncelleme Tarihi")
is_active = models.BooleanField(default=False, verbose_name='Yayındamı ?', choices=aktif)
class Meta:
ordering = ["created_at"]
db_table = 'services'
verbose_name_plural = "Servislerim"
verbose_name = "Servis"
unique_together = ('slug',)
def get_slug(self):
slug = self.title.replace('ı', "i").replace('İ', 'i')
number = 1
while Home.objects.filter(slug=slug).exists():
slug = '{}-{}'.format(slug, number)
number += 1
return slug
def save(self, *args, **kwargs):
if not self.slug:
self.slug = self.get_slug()
super().save(*args, **kwargs)
def __str__(self):
return f"Services: {self.title}"
class MyServiceTitle(models.Model):
aktif = (
(True, 'Evet'),
(False, 'Hayır'),
)
title = models.CharField(max_length=254, verbose_name="Servis Başlığı ")
title_sub = models.CharField(max_length=254, verbose_name="Servis Başlığı ")
created_at = models.DateTimeField(auto_now_add=True, editable=False, verbose_name="Oluşturulma Tarihi")
updated_at = models.DateTimeField(auto_now=True, editable=False, verbose_name="Güncelleme Tarihi")
is_active = models.BooleanField(default=False, verbose_name='Yayındamı ?', choices=aktif)
class Meta:
ordering = ["created_at"]
db_table = 'services_title'
verbose_name_plural = "Servislerim Başlıkları"
verbose_name = "Servis Başlığı"
def __str__(self):
return f"Services: {self.title}"
class MyResume(models.Model):
aktif = (
(True, 'Evet'),
(False, 'Hayır'),
)
title = models.CharField(max_length=254, verbose_name="Başlık ")
title_sub = models.CharField(max_length=254, verbose_name="Alt Başlığı ")
education = models.CharField(max_length=100, verbose_name="Education", blank=True, null=True, default='Education')
experience = models.CharField(max_length=100, verbose_name="Experience ", blank=True, null=True,
default='Experience')
coding_skills = models.CharField(max_length=100, verbose_name="Coding Skills ", blank=True, null=True,
default='Coding Skills')
knowledge = models.CharField(max_length=100, verbose_name="Knowledge ", blank=True, null=True, default='Knowledge')
created_at = models.DateTimeField(auto_now_add=True, editable=False, verbose_name="Oluşturulma Tarihi")
updated_at = models.DateTimeField(auto_now=True, editable=False, verbose_name="Güncelleme Tarihi")
is_active = models.BooleanField(default=False, verbose_name='Yayındamı ?', choices=aktif)
class Meta:
ordering = ["created_at"]
db_table = 'resumes'
verbose_name_plural = "MyResume"
verbose_name = "MyResume"
def __str__(self):
return f"MyResume: {self.title}"
class Education(models.Model):
aktif = (
(True, 'Evet'),
(False, 'Hayır'),
)
between_years = models.CharField(max_length=50, verbose_name="Yıllar Arasında ")
title = models.CharField(max_length=100, verbose_name="Başlık ")
content = models.CharField(max_length=150, verbose_name="İçerik")
resume = models.ForeignKey(MyResume, on_delete=models.CASCADE, null=True, blank=True, related_name='edu_resume')
created_at = models.DateTimeField(auto_now_add=True, editable=False, verbose_name="Oluşturulma Tarihi")
updated_at = models.DateTimeField(auto_now=True, editable=False, verbose_name="Güncelleme Tarihi")
is_active = models.BooleanField(default=False, verbose_name='Yayındamı ?', choices=aktif)
class Meta:
ordering = ["created_at"]
db_table = 'educations'
verbose_name_plural = "Education"
verbose_name = "Education "
def __str__(self):
return f"Education: {self.title}"
class Experience(models.Model):
aktif = (
(True, 'Evet'),
(False, 'Hayır'),
)
between_years = models.CharField(max_length=50, verbose_name="Yıllar Arasında ")
title = models.CharField(max_length=100, verbose_name="Başlık ")
content = models.CharField(max_length=150, verbose_name="İçerik")
resume = models.ForeignKey(MyResume, on_delete=models.CASCADE, null=True, blank=True, related_name='exp_resume')
created_at = models.DateTimeField(auto_now_add=True, editable=False, verbose_name="Oluşturulma Tarihi")
updated_at = models.DateTimeField(auto_now=True, editable=False, verbose_name="Güncelleme Tarihi")
is_active = models.BooleanField(default=False, verbose_name='Yayındamı ?', choices=aktif)
class Meta:
ordering = ["created_at"]
db_table = 'experience'
verbose_name_plural = "Experience "
verbose_name = "Experience "
def __str__(self):
return f"Experience: {self.title}"
class Skill(models.Model):
aktif = (
(True, 'Evet'),
(False, 'Hayır'),
)
title = models.CharField(max_length=100, verbose_name="Başlık")
degree = models.IntegerField(verbose_name="Derecelendirme ")
resume = models.ForeignKey(MyResume, on_delete=models.CASCADE, null=True, blank=True, related_name='skill_resume')
created_at = models.DateTimeField(auto_now_add=True, editable=False, verbose_name="Oluşturulma Tarihi")
updated_at = models.DateTimeField(auto_now=True, editable=False, verbose_name="Güncelleme Tarihi")
is_active = models.BooleanField(default=False, verbose_name='Yayındamı ?', choices=aktif)
class Meta:
ordering = ["created_at"]
db_table = 'skills'
verbose_name_plural = "Skill"
verbose_name = "Skill"
def __str__(self):
return f"Skill: {self.title}"
class Knowledge(models.Model):
aktif = (
(True, 'Evet'),
(False, 'Hayır'),
)
title = models.CharField(max_length=100, verbose_name="Başlık ")
created_at = models.DateTimeField(auto_now_add=True, editable=False, verbose_name="Oluşturulma Tarihi")
updated_at = models.DateTimeField(auto_now=True, editable=False, verbose_name="Güncelleme Tarihi")
is_active = models.BooleanField(default=False, verbose_name='Yayındamı ?', choices=aktif)
resume = models.ForeignKey(MyResume, on_delete=models.CASCADE, null=True, blank=True, related_name='know_resume')
class Meta:
ordering = ["created_at"]
db_table = 'knowledges'
verbose_name_plural = "Knowledge"
verbose_name = "Knowledge"
def __str__(self):
return f"Knowledge: {self.title}"
class MainMenu(models.Model):
aktif = (
(True, 'Evet'),
(False, 'Hayır'),
)
home = models.CharField(max_length=100, verbose_name="Home ")
about = models.CharField(max_length=100, verbose_name="About ")
services = models.CharField(max_length=100, verbose_name="Services ")
resume = models.CharField(max_length=100, verbose_name="Resume ")
portfolio = models.CharField(max_length=100, verbose_name="Portfolio ")
contact = models.CharField(max_length=100, verbose_name="Contact ")
created_at = models.DateTimeField(auto_now_add=True, editable=False, verbose_name="Oluşturulma Tarihi")
updated_at = models.DateTimeField(auto_now=True, editable=False, verbose_name="Güncelleme Tarihi")
is_active = models.BooleanField(default=False, verbose_name='Yayındamı ?', choices=aktif)
class Meta:
ordering = ["created_at"]
db_table = 'mane_menu'
verbose_name_plural = "MainMenu"
verbose_name = "MainMenu"
def __str__(self):
return f"MainMenu: {self.home}"
"""
education = models.ForeignKey(Education, on_delete=models.CASCADE, null=True, blank=True)
experience = models.ForeignKey(Experience, on_delete=models.CASCADE, null=True, blank=True)
knowledge = models.ForeignKey(Knowledge, on_delete=models.CASCADE, null=True, blank=True)
skill = models.ForeignKey(Skill, on_delete=models.CASCADE, null=True, blank=True)
"""