first commit

This commit is contained in:
Beyhan Oğur
2026-04-26 22:27:56 +03:00
commit d9f1ea341e
1021 changed files with 70645 additions and 0 deletions

View File

@@ -0,0 +1,123 @@
# Generated by Django 5.2.1 on 2025-06-03 04:02
import autoslug.fields
import django.db.models.deletion
import imagekit.models.fields
from django.conf import settings
from django.db import migrations, models
class Migration(migrations.Migration):
initial = True
dependencies = [
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
]
operations = [
migrations.CreateModel(
name='Images',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('title', models.CharField(max_length=254, verbose_name='Resim Başlığı')),
('is_active', models.BooleanField(choices=[(True, 'Evet'), (False, 'Hayır')], default=True, verbose_name='Yayındamı ?')),
('created_at', models.DateTimeField(auto_now_add=True, verbose_name='Oluşturulma Tarihi')),
('updated_at', models.DateTimeField(auto_now=True, verbose_name='Güncelleme Tarihi')),
('images', imagekit.models.fields.ProcessedImageField(upload_to='uploads/product/%Y')),
],
options={
'verbose_name': 'Ürün Resmi',
'verbose_name_plural': 'Ürün Resimleri',
'db_table': 'images',
'ordering': ['-created_at'],
},
),
migrations.CreateModel(
name='Category',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('title', models.CharField(max_length=254, verbose_name='Kategori')),
('keywords', models.CharField(max_length=254, verbose_name='Seo Kelimeleri Aralarına Virgül Koyunuz')),
('description', models.CharField(max_length=254, verbose_name='ıklama')),
('created_at', models.DateTimeField(auto_now_add=True, verbose_name='Oluşturulma Tarihi')),
('updated_at', models.DateTimeField(auto_now=True, verbose_name='Güncelleme Tarihi')),
('is_active', models.BooleanField(choices=[(True, 'Evet'), (False, 'Hayır')], default=True, verbose_name='Yayındamı')),
('order', models.IntegerField(db_index=True, default=1, verbose_name='Görüntülenme Sırası')),
('slug', autoslug.fields.AutoSlugField(blank=True, editable=True, max_length=250, populate_from='title', unique=True)),
('parent', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='child', to='product.category', verbose_name='Üst Kategorisi')),
],
options={
'verbose_name': 'Ürün Kategori',
'verbose_name_plural': 'Ürün Kategorilerileri',
'db_table': 'categories',
'ordering': ['order'],
'unique_together': {('slug', 'parent')},
},
),
migrations.CreateModel(
name='Tags',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('tag', models.CharField(max_length=254, verbose_name='Ürün Tagları')),
('created_at', models.DateTimeField(auto_now_add=True, verbose_name='Oluşturulma Tarihi')),
('updated_at', models.DateTimeField(auto_now=True, verbose_name='Güncelleme Tarihi')),
('is_active', models.BooleanField(choices=[(True, 'Evet'), (False, 'Hayır')], default=True, verbose_name='Yayındamı')),
('slug', autoslug.fields.AutoSlugField(editable=False, populate_from='tag', unique=True)),
],
options={
'verbose_name': 'Ürün Tagı',
'verbose_name_plural': 'Ürün Tagları',
'db_table': 'tags',
'ordering': ['-created_at'],
'unique_together': {('slug',)},
},
),
migrations.CreateModel(
name='Product',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('title', models.CharField(max_length=254, verbose_name='Ürün Başlığı')),
('content', models.TextField(blank=True, null=True, verbose_name='Ürün İçeriği')),
('keywords', models.CharField(max_length=254, verbose_name='Seo Kelimeleri Aralarına Virgül Koyunuz')),
('price', models.FloatField(verbose_name='Fiyatı')),
('video', models.CharField(blank=True, default='none', max_length=254, null=True, verbose_name='Video')),
('slug', autoslug.fields.AutoSlugField(editable=False, max_length=250, populate_from='title', unique=True)),
('created_at', models.DateTimeField(auto_now_add=True, verbose_name='Oluşturulma Tarihi')),
('updated_at', models.DateTimeField(auto_now=True, verbose_name='Güncelleme Tarihi')),
('is_active', models.BooleanField(choices=[(True, 'Evet'), (False, 'Hayır')], default=True, verbose_name='Yayındamı ?')),
('categories', models.ManyToManyField(related_name='categories', to='product.category', verbose_name='Ürün Kategorisi')),
('images', models.ManyToManyField(related_name='img', to='product.images', verbose_name='Ürün Resimleri')),
('tags', models.ManyToManyField(related_name='tags', to='product.tags', verbose_name='Ürün Tagları')),
],
options={
'verbose_name': 'Ürün',
'verbose_name_plural': 'Ürünler',
'db_table': 'products',
'ordering': ['-created_at'],
'unique_together': {('slug',)},
},
),
migrations.CreateModel(
name='Comment',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('title', models.CharField(max_length=254, verbose_name='Yorum Başlığı')),
('body', models.TextField(verbose_name='Yorum')),
('created_at', models.DateTimeField(auto_now_add=True, verbose_name='Oluşturulma Tarihi')),
('updated_at', models.DateTimeField(auto_now=True, verbose_name='Güncelleme Tarihi')),
('is_active', models.BooleanField(choices=[(True, 'Evet'), (False, 'Hayır')], default=True, verbose_name='Yayındamı')),
('slug', autoslug.fields.AutoSlugField(editable=False, populate_from='title', unique=True)),
('parent', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='child', to='product.comment')),
('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='cuser', to=settings.AUTH_USER_MODEL)),
('product', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='_product', to='product.product')),
],
options={
'verbose_name': 'Ürüm Yorum',
'verbose_name_plural': 'Ürün Yorumları',
'db_table': 'comments',
'ordering': ['-created_at'],
'unique_together': {('slug', 'parent')},
},
),
]

View File

@@ -0,0 +1,23 @@
# Generated by Django 5.2.1 on 2025-06-03 04:11
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('product', '0001_initial'),
]
operations = [
migrations.AddField(
model_name='product',
name='kd_price',
field=models.FloatField(blank=True, null=True, verbose_name='Kg Fiyatı'),
),
migrations.AlterField(
model_name='product',
name='price',
field=models.FloatField(verbose_name='Top Fiyatı'),
),
]

View File

@@ -0,0 +1,18 @@
# Generated by Django 5.2.1 on 2025-06-03 04:11
from django.db import migrations
class Migration(migrations.Migration):
dependencies = [
('product', '0002_product_kd_price_alter_product_price'),
]
operations = [
migrations.RenameField(
model_name='product',
old_name='kd_price',
new_name='kg_price',
),
]

View File

@@ -0,0 +1,38 @@
# Generated by Django 5.2.1 on 2025-06-03 13:21
import imagekit.models.fields
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('product', '0003_rename_kd_price_product_kg_price'),
]
operations = [
migrations.AlterModelOptions(
name='images',
options={'ordering': ['-created_at'], 'verbose_name': 'Galeri Resmi', 'verbose_name_plural': 'Galeri Resimleri'},
),
migrations.AlterField(
model_name='images',
name='images',
field=imagekit.models.fields.ProcessedImageField(upload_to='uploads/galeri/%Y'),
),
migrations.RemoveField(
model_name='product',
name='images',
),
migrations.AlterField(
model_name='product',
name='price',
field=models.FloatField(verbose_name='Birim Fiyatı'),
),
migrations.AddField(
model_name='product',
name='images',
field=imagekit.models.fields.ProcessedImageField(default=1, upload_to='uploads/product/%Y'),
preserve_default=False,
),
]

View File

@@ -0,0 +1,24 @@
# Generated by Django 5.2.1 on 2025-06-12 01:46
import imagekit.models.fields
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('product', '0004_alter_images_options_alter_images_images_and_more'),
]
operations = [
migrations.AddField(
model_name='product',
name='special',
field=models.BooleanField(choices=[(True, 'Evet'), (False, 'Hayır')], default=False, verbose_name='Özel Ürünmü ?'),
),
migrations.AddField(
model_name='product',
name='special_images',
field=imagekit.models.fields.ProcessedImageField(blank=True, null=True, upload_to='uploads/product/special/%Y', verbose_name='Eğer bu Ürün Özel Ürünise Resim yükleyin !!'),
),
]

View File

@@ -0,0 +1,18 @@
# Generated by Django 5.2.1 on 2025-06-12 04:01
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('product', '0005_product_special_product_special_images'),
]
operations = [
migrations.AddField(
model_name='product',
name='thumbnail',
field=models.ImageField(blank=True, editable=False, null=True, upload_to='uploads/product/thumbs/%Y'),
),
]

View File

@@ -0,0 +1,20 @@
# Generated by Django 5.2.1 on 2025-06-12 18:43
import imagekit.models.fields
from django.db import migrations
class Migration(migrations.Migration):
dependencies = [
('product', '0006_product_thumbnail'),
]
operations = [
migrations.AddField(
model_name='category',
name='images',
field=imagekit.models.fields.ProcessedImageField(default=1, upload_to='uploads/category/%Y'),
preserve_default=False,
),
]

View File

@@ -0,0 +1,17 @@
# Generated by Django 5.2.1 on 2025-06-13 01:43
from django.db import migrations
class Migration(migrations.Migration):
dependencies = [
('product', '0007_category_images'),
]
operations = [
migrations.RemoveField(
model_name='product',
name='special_images',
),
]

View File

@@ -0,0 +1,17 @@
# Generated by Django 5.2.1 on 2025-06-13 01:47
from django.db import migrations
class Migration(migrations.Migration):
dependencies = [
('product', '0008_remove_product_special_images'),
]
operations = [
migrations.RemoveField(
model_name='product',
name='special',
),
]

View File

@@ -0,0 +1,18 @@
# Generated by Django 5.2.1 on 2025-06-13 03:50
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('product', '0009_remove_product_special'),
]
operations = [
migrations.AlterField(
model_name='product',
name='price',
field=models.FloatField(default='50', verbose_name='Birim Fiyatı'),
),
]

View File

@@ -0,0 +1,23 @@
# Generated by Django 5.2.1 on 2025-06-13 12:47
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('product', '0010_alter_product_price'),
]
operations = [
migrations.RemoveField(
model_name='product',
name='kg_price',
),
migrations.AddField(
model_name='product',
name='brim',
field=models.CharField(default=1, max_length=10, verbose_name='Birim'),
preserve_default=False,
),
]

View File

@@ -0,0 +1,18 @@
# Generated by Django 5.2.1 on 2025-06-13 12:48
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('product', '0011_remove_product_kg_price_product_brim'),
]
operations = [
migrations.AlterField(
model_name='product',
name='brim',
field=models.CharField(choices=[('Top', 'Top'), ('Kg', 'Kg'), ('Adet', 'Adet'), ('Litre', 'Litre')], max_length=10, verbose_name='Birim'),
),
]

View File

@@ -0,0 +1,18 @@
# Generated by Django 5.2.1 on 2025-06-13 12:55
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('product', '0012_alter_product_brim'),
]
operations = [
migrations.AlterField(
model_name='product',
name='brim',
field=models.CharField(choices=[('Top', 'Top'), ('Kg', 'Kg'), ('Adet', 'Adet'), ('Dilim', 'Dilim'), ('Litre', 'Litre')], max_length=10, verbose_name='Birim'),
),
]

View File

@@ -0,0 +1,19 @@
# Generated by Django 5.2.1 on 2025-06-13 13:02
import autoslug.fields
from django.db import migrations
class Migration(migrations.Migration):
dependencies = [
('product', '0013_alter_product_brim'),
]
operations = [
migrations.AlterField(
model_name='product',
name='slug',
field=autoslug.fields.AutoSlugField(blank=True, editable=True, max_length=250, populate_from='title', unique=True),
),
]

View File

@@ -0,0 +1,18 @@
# Generated by Django 5.2.1 on 2025-06-14 14:08
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('product', '0014_alter_product_slug'),
]
operations = [
migrations.AlterField(
model_name='product',
name='brim',
field=models.CharField(choices=[('Top', 'Top'), ('Kg', 'Kg'), ('Adet', 'Adet'), ('Fincan', 'Fincan'), ('Bardak', 'Bardak'), ('Dilim', 'Dilim'), ('Litre', 'Litre')], max_length=10, verbose_name='Birim'),
),
]

View File

@@ -0,0 +1,18 @@
# Generated by Django 5.2.1 on 2025-06-14 15:20
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('product', '0015_alter_product_brim'),
]
operations = [
migrations.AddField(
model_name='product',
name='gallery',
field=models.ManyToManyField(related_name='gallery', to='product.images', verbose_name='Galeri'),
),
]

View File

@@ -0,0 +1,18 @@
# Generated by Django 5.2.1 on 2025-06-15 01:35
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('product', '0016_product_gallery'),
]
operations = [
migrations.AlterField(
model_name='product',
name='brim',
field=models.CharField(choices=[('Top', 'Top'), ('Kg', 'Kg'), ('Adet', 'Adet'), ('Porsiyon', 'Porsiyon'), ('Fincan', 'Fincan'), ('Bardak', 'Bardak'), ('Dilim', 'Dilim'), ('Litre', 'Litre')], max_length=10, verbose_name='Birim'),
),
]

View File

@@ -0,0 +1,18 @@
# Generated by Django 5.2.1 on 2025-06-15 01:38
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('product', '0017_alter_product_brim'),
]
operations = [
migrations.AddField(
model_name='product',
name='is_front',
field=models.BooleanField(choices=[(True, 'Evet'), (False, 'Hayır')], default=True, verbose_name='Önde Görünsünmü ?'),
),
]

View File

@@ -0,0 +1,20 @@
# Generated by Django 5.2.1 on 2025-06-15 14:32
import imagekit.models.fields
from django.db import migrations
class Migration(migrations.Migration):
dependencies = [
('product', '0018_product_is_front'),
]
operations = [
migrations.AddField(
model_name='product',
name='thumb',
field=imagekit.models.fields.ProcessedImageField(default=1, upload_to='uploads/thumb/%Y'),
preserve_default=False,
),
]

View File

@@ -0,0 +1,23 @@
# Generated by Django 5.2.1 on 2025-06-15 14:35
import imagekit.models.fields
from django.db import migrations
class Migration(migrations.Migration):
dependencies = [
('product', '0019_product_thumb'),
]
operations = [
migrations.RemoveField(
model_name='product',
name='thumbnail',
),
migrations.AlterField(
model_name='product',
name='thumb',
field=imagekit.models.fields.ProcessedImageField(editable=False, upload_to='uploads/thumb/%Y'),
),
]

View File

@@ -0,0 +1,34 @@
# Generated by Django 6.0 on 2026-01-18 22:26
import core.utils
import imagekit.models.fields
from django.db import migrations
class Migration(migrations.Migration):
dependencies = [
('product', '0020_remove_product_thumbnail_alter_product_thumb'),
]
operations = [
migrations.RemoveField(
model_name='product',
name='thumb',
),
migrations.AlterField(
model_name='category',
name='images',
field=imagekit.models.fields.ProcessedImageField(blank=True, null=True, upload_to=core.utils.UniquePathAndRename('uploads/category')),
),
migrations.AlterField(
model_name='images',
name='images',
field=imagekit.models.fields.ProcessedImageField(blank=True, null=True, upload_to=core.utils.UniquePathAndRename('uploads/images')),
),
migrations.AlterField(
model_name='product',
name='images',
field=imagekit.models.fields.ProcessedImageField(blank=True, null=True, upload_to=core.utils.UniquePathAndRename('uploads/post')),
),
]

View File

@@ -0,0 +1,26 @@
# Generated by Django 6.0 on 2026-01-18 22:37
import core.utils
import imagekit.models.fields
import tinymce.models
from django.db import migrations
class Migration(migrations.Migration):
dependencies = [
('product', '0021_remove_product_thumb_alter_category_images_and_more'),
]
operations = [
migrations.AlterField(
model_name='product',
name='content',
field=tinymce.models.HTMLField(blank=True, null=True, verbose_name='Ürün İçeriği'),
),
migrations.AlterField(
model_name='product',
name='images',
field=imagekit.models.fields.ProcessedImageField(blank=True, null=True, upload_to=core.utils.UniquePathAndRename('uploads/products')),
),
]

View File

@@ -0,0 +1,48 @@
# Generated by Django 6.0 on 2026-01-19 19:04
import core.utils
import imagekit.models.fields
import tinymce.models
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('product', '0022_alter_product_content_alter_product_images'),
]
operations = [
migrations.AlterField(
model_name='product',
name='brim',
field=models.CharField(choices=[('Kg', 'Kg'), ('Adet', 'Adet')], max_length=10, verbose_name='Birim'),
),
migrations.AlterField(
model_name='product',
name='categories',
field=models.ManyToManyField(related_name='products', to='product.category', verbose_name='Ürün Kategorisi'),
),
migrations.CreateModel(
name='ProductTree',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('title', models.CharField(max_length=254, verbose_name='Text')),
('button', models.CharField(max_length=254, verbose_name='Button Text')),
('content', tinymce.models.HTMLField(blank=True, null=True, verbose_name='Ürün İçeriği')),
('price', models.FloatField(default='50', verbose_name='Birim Fiyatı')),
('images', imagekit.models.fields.ProcessedImageField(blank=True, null=True, upload_to=core.utils.UniquePathAndRename('uploads/products'))),
('created_at', models.DateTimeField(auto_now_add=True, verbose_name='Oluşturulma Tarihi')),
('updated_at', models.DateTimeField(auto_now=True, verbose_name='Güncelleme Tarihi')),
('is_active', models.BooleanField(choices=[(True, 'Evet'), (False, 'Hayır')], default=True, verbose_name='Yayındamı ?')),
('is_front', models.BooleanField(choices=[(True, 'Evet'), (False, 'Hayır')], default=True, verbose_name='Önde Görünsünmü ?')),
('categories', models.ManyToManyField(related_name='product_trees', to='product.category', verbose_name='Ürün Kategorisi')),
],
options={
'verbose_name': 'Ürün',
'verbose_name_plural': 'Ürünler',
'db_table': 'products_tree',
'ordering': ['-created_at'],
},
),
]

View File

@@ -0,0 +1,21 @@
# Generated by Django 6.0 on 2026-01-19 19:08
from django.db import migrations
class Migration(migrations.Migration):
dependencies = [
('product', '0023_alter_product_brim_alter_product_categories_and_more'),
]
operations = [
migrations.AlterModelOptions(
name='producttree',
options={'ordering': ['-created_at'], 'verbose_name': 'Ürün Tree', 'verbose_name_plural': 'Ürünler Tree'},
),
migrations.RemoveField(
model_name='producttree',
name='categories',
),
]

View File

@@ -0,0 +1,18 @@
# Generated by Django 6.0 on 2026-01-19 19:39
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('product', '0024_alter_producttree_options_and_more'),
]
operations = [
migrations.AlterField(
model_name='producttree',
name='content',
field=models.TextField(blank=True, null=True, verbose_name='Ürün İçeriği'),
),
]

View File

@@ -0,0 +1,18 @@
# Generated by Django 6.0 on 2026-01-20 18:06
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('product', '0025_alter_producttree_content'),
]
operations = [
migrations.AddField(
model_name='producttree',
name='categories',
field=models.ManyToManyField(related_name='product_trees', to='product.category', verbose_name='Ürün Kategorisi'),
),
]

View File

@@ -0,0 +1,20 @@
# Generated by Django 6.0 on 2026-01-21 01:07
import core.utils
import imagekit.models.fields
from django.db import migrations
class Migration(migrations.Migration):
dependencies = [
('product', '0026_producttree_categories'),
]
operations = [
migrations.AddField(
model_name='product',
name='thumb',
field=imagekit.models.fields.ProcessedImageField(blank=True, editable=False, null=True, upload_to=core.utils.UniquePathAndRename('uploads/products/thumb')),
),
]

View File