Modellar tayyor

This commit is contained in:
2025-11-24 11:46:23 +05:00
parent 3da10c2a7f
commit 5632e0c484
48 changed files with 877 additions and 33 deletions

View File

@@ -0,0 +1,34 @@
# Generated by Django 5.2.7 on 2025-11-22 11:39
from django.db import migrations, models
class Migration(migrations.Migration):
initial = True
dependencies = [
]
operations = [
migrations.CreateModel(
name='Banner',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('created_at', models.DateTimeField(auto_now_add=True)),
('updated_at', models.DateTimeField(auto_now=True)),
('title', models.CharField(max_length=255, verbose_name='Title')),
('description', models.TextField(verbose_name='Description')),
('mobile_image', models.ImageField(upload_to='banner/mobile_image/', verbose_name='Mobile Image')),
('desktop_image', models.ImageField(upload_to='banner/desktop_image/', verbose_name='Desktop Image')),
('link', models.URLField(verbose_name='Link')),
('bg_color', models.CharField(max_length=255, verbose_name='BG Color')),
('text_color', models.CharField(max_length=255, verbose_name='Text Color')),
],
options={
'verbose_name': 'Banner',
'verbose_name_plural': 'Banners',
'db_table': 'banner',
},
),
]

View File

@@ -0,0 +1,240 @@
# Generated by Django 5.2.7 on 2025-11-24 06:45
import django.db.models.deletion
from django.conf import settings
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('accounts', '0004_business_searchhistory'),
('api', '0001_initial'),
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
]
operations = [
migrations.CreateModel(
name='AdTopPlan',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('created_at', models.DateTimeField(auto_now_add=True)),
('updated_at', models.DateTimeField(auto_now=True)),
('name', models.CharField(max_length=255, verbose_name='Name')),
('price', models.DecimalField(decimal_places=2, max_digits=10, verbose_name='Price')),
('duration', models.IntegerField(verbose_name='Duration')),
],
options={
'verbose_name': 'AdTop Plan',
'verbose_name_plural': 'AdTop Plan',
'db_table': 'ad_top_plan',
},
),
migrations.CreateModel(
name='Color',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('created_at', models.DateTimeField(auto_now_add=True)),
('updated_at', models.DateTimeField(auto_now=True)),
('name', models.CharField(max_length=255, verbose_name='Name')),
],
options={
'verbose_name': 'Color',
'verbose_name_plural': 'Colors',
'db_table': 'color',
},
),
migrations.CreateModel(
name='Tags',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('created_at', models.DateTimeField(auto_now_add=True)),
('updated_at', models.DateTimeField(auto_now=True)),
('name', models.CharField(max_length=255, verbose_name='Name')),
],
options={
'verbose_name': 'Tags',
'verbose_name_plural': 'Tags',
'db_table': 'tags',
},
),
migrations.CreateModel(
name='AdModel',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('created_at', models.DateTimeField(auto_now_add=True)),
('updated_at', models.DateTimeField(auto_now=True)),
('name', models.CharField(max_length=255, verbose_name='Name')),
('ad_type', models.CharField(choices=[('Buy', 'Buy'), ('Sell', 'Sell')], max_length=255, verbose_name='Type')),
('ad_category_type', models.CharField(choices=[('Product', 'Product'), ('Service', 'Service'), ('Auto', 'Auto'), ('Home', 'Home')], max_length=255, verbose_name='Type')),
('price', models.DecimalField(blank=True, decimal_places=2, max_digits=10, null=True, verbose_name='Price')),
('is_available', models.BooleanField(blank=True, default=True, null=True, verbose_name='Is available')),
('physical_product', models.BooleanField(default=False, verbose_name='Physical product')),
('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='ad', to=settings.AUTH_USER_MODEL, verbose_name='User')),
('plan', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='api.adtopplan', verbose_name='Plan')),
],
options={
'verbose_name': 'Ad',
'verbose_name_plural': 'Ads',
'db_table': 'ad',
},
),
migrations.CreateModel(
name='AdImage',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('created_at', models.DateTimeField(auto_now_add=True)),
('updated_at', models.DateTimeField(auto_now=True)),
('image', models.ImageField(upload_to='ads/images/', verbose_name='Image')),
('ad', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='api.admodel', verbose_name='Ad')),
],
options={
'verbose_name': 'Ad_Image',
'verbose_name_plural': 'Ad_Images',
'db_table': 'ad_images',
},
),
migrations.CreateModel(
name='AdOption',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('created_at', models.DateTimeField(auto_now_add=True)),
('updated_at', models.DateTimeField(auto_now=True)),
('name', models.CharField(max_length=255, verbose_name='Name')),
('value', models.CharField(max_length=255, verbose_name='Value')),
('ad', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='api.admodel')),
],
options={
'verbose_name': 'Ad_Option',
'verbose_name_plural': 'Ad_Options',
'db_table': 'ad_option',
},
),
migrations.CreateModel(
name='AdSize',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('created_at', models.DateTimeField(auto_now_add=True)),
('updated_at', models.DateTimeField(auto_now=True)),
('weight', models.PositiveIntegerField(verbose_name='Weight')),
('width', models.PositiveIntegerField(verbose_name='Width')),
('height', models.PositiveIntegerField(verbose_name='Height')),
('length', models.PositiveIntegerField(verbose_name='Length')),
('ad', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='api.admodel')),
],
options={
'verbose_name': 'AdSize',
'verbose_name_plural': 'AdSizes',
'db_table': 'ad_size',
},
),
migrations.CreateModel(
name='AdVariant',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('created_at', models.DateTimeField(auto_now_add=True)),
('updated_at', models.DateTimeField(auto_now=True)),
('variant', models.CharField(choices=[('Color', 'Color'), ('Size', 'Size')], db_index=True, max_length=255)),
('value', models.CharField(max_length=255)),
('is_available', models.CharField(max_length=255)),
('price', models.DecimalField(decimal_places=2, max_digits=10)),
('discount', models.DecimalField(decimal_places=2, default=-1, max_digits=10)),
('ad', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='api.admodel')),
],
options={
'verbose_name': 'Ad_Variant',
'verbose_name_plural': 'Ad_Variants',
'db_table': 'ad_variant',
},
),
migrations.CreateModel(
name='Category',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('created_at', models.DateTimeField(auto_now_add=True)),
('updated_at', models.DateTimeField(auto_now=True)),
('name', models.CharField(max_length=255, verbose_name='Category Name')),
('show_home', models.BooleanField(default=False, verbose_name='Show Home')),
('level', models.IntegerField(default=0, verbose_name='Level')),
('parent', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='children', to='api.category')),
],
options={
'verbose_name': 'Category',
'verbose_name_plural': 'Categories',
'db_table': 'category',
},
),
migrations.AddField(
model_name='admodel',
name='category',
field=models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='api.category', verbose_name='Category'),
),
migrations.CreateModel(
name='Feedback',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('created_at', models.DateTimeField(auto_now_add=True)),
('updated_at', models.DateTimeField(auto_now=True)),
('star', models.IntegerField(default=0, verbose_name='Star')),
('command', models.CharField(max_length=255, verbose_name='Command')),
('ad', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='api.admodel', verbose_name='Ad')),
('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL, verbose_name='User')),
],
options={
'verbose_name': 'Feedback',
'verbose_name_plural': 'Feedbacks',
'db_table': 'feedback',
},
),
migrations.CreateModel(
name='FeedbackImages',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('created_at', models.DateTimeField(auto_now_add=True)),
('updated_at', models.DateTimeField(auto_now=True)),
('image', models.ImageField(upload_to='feedback/images/', verbose_name='Image')),
('feedback', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='api.feedback', verbose_name='Feedback')),
],
options={
'verbose_name': 'Feedback Images',
'verbose_name_plural': 'Feedback Images',
'db_table': 'feedback_images',
},
),
migrations.CreateModel(
name='Order',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('created_at', models.DateTimeField(auto_now_add=True)),
('updated_at', models.DateTimeField(auto_now=True)),
('status', models.CharField(choices=[('Pending', 'Pending'), ('Cancel', 'Cancel'), ('Done', 'Done')], max_length=255)),
('address', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='accounts.address', verbose_name='Address')),
('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL, verbose_name='User')),
],
options={
'verbose_name': 'Order',
'verbose_name_plural': 'Orders',
'db_table': 'order',
},
),
migrations.CreateModel(
name='OrderItem',
fields=[
('id', models.BigAutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('price', models.DecimalField(decimal_places=2, max_digits=10, verbose_name='Price')),
('count', models.PositiveIntegerField(default=0, verbose_name='Count')),
('ad', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='api.admodel', verbose_name='Ad')),
('order', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='api.order', verbose_name='Order')),
],
options={
'verbose_name': 'Order Item',
'verbose_name_plural': 'Order Items',
'db_table': 'order_item',
},
),
migrations.AddField(
model_name='admodel',
name='tags',
field=models.ManyToManyField(to='api.tags', verbose_name='Tags'),
),
]

View File