django-eav2/eav/migrations/0001_initial.py

228 lines
7.5 KiB
Python
Raw Normal View History

# Generated by Django 2.0.4 on 2018-06-01 09:36
2016-10-13 05:59:41 +00:00
import django.db.models.deletion
import django.utils.timezone
2021-10-16 17:43:20 +00:00
from django.db import migrations, models
2016-10-13 05:59:41 +00:00
import eav.fields
class Migration(migrations.Migration):
"""Initial migration for the Attribute, EnumGroup, EnumValue, and Value models."""
2016-10-13 05:59:41 +00:00
initial = True
dependencies = [
("contenttypes", "0002_remove_content_type_name"),
2016-10-13 05:59:41 +00:00
]
operations = [
migrations.CreateModel(
name="Attribute",
2016-10-13 05:59:41 +00:00
fields=[
2021-10-16 17:43:02 +00:00
(
"id",
2021-10-16 17:43:02 +00:00
models.AutoField(
auto_created=True,
primary_key=True,
serialize=False,
verbose_name="ID",
2021-10-16 17:43:02 +00:00
),
),
(
"name",
2021-10-16 17:43:02 +00:00
models.CharField(
help_text="User-friendly attribute name",
2021-10-16 17:43:02 +00:00
max_length=100,
verbose_name="Name",
2021-10-16 17:43:02 +00:00
),
),
(
"slug",
2022-08-12 21:36:49 +00:00
models.SlugField(
help_text="Short unique attribute label",
2021-10-16 17:43:02 +00:00
unique=True,
verbose_name="Slug",
2021-10-16 17:43:02 +00:00
),
),
(
"description",
2021-10-16 17:43:02 +00:00
models.CharField(
blank=True,
help_text="Short description",
2021-10-16 17:43:02 +00:00
max_length=256,
null=True,
verbose_name="Description",
2021-10-16 17:43:02 +00:00
),
),
(
"datatype",
2021-10-16 17:43:02 +00:00
eav.fields.EavDatatypeField(
choices=[
("text", "Text"),
("date", "Date"),
("float", "Float"),
("int", "Integer"),
("bool", "True / False"),
("object", "Django Object"),
("enum", "Multiple Choice"),
2021-10-16 17:43:02 +00:00
],
max_length=6,
verbose_name="Data Type",
2021-10-16 17:43:02 +00:00
),
),
(
"created",
2021-10-16 17:43:02 +00:00
models.DateTimeField(
default=django.utils.timezone.now,
editable=False,
verbose_name="Created",
2021-10-16 17:43:02 +00:00
),
),
(
"modified",
models.DateTimeField(auto_now=True, verbose_name="Modified"),
2021-10-16 17:43:02 +00:00
),
(
"required",
models.BooleanField(default=False, verbose_name="Required"),
2021-10-16 17:43:02 +00:00
),
(
"display_order",
2021-10-16 17:43:02 +00:00
models.PositiveIntegerField(
default=1,
verbose_name="Display order",
2021-10-16 17:43:02 +00:00
),
),
2016-10-13 05:59:41 +00:00
],
options={
"ordering": ["name"],
2016-10-13 05:59:41 +00:00
},
),
migrations.CreateModel(
name="EnumGroup",
2016-10-13 05:59:41 +00:00
fields=[
2021-10-16 17:43:02 +00:00
(
"id",
2021-10-16 17:43:02 +00:00
models.AutoField(
auto_created=True,
primary_key=True,
serialize=False,
verbose_name="ID",
2021-10-16 17:43:02 +00:00
),
),
(
"name",
models.CharField(max_length=100, unique=True, verbose_name="Name"),
2021-10-16 17:43:02 +00:00
),
2016-10-13 05:59:41 +00:00
],
),
migrations.CreateModel(
name="EnumValue",
2016-10-13 05:59:41 +00:00
fields=[
2021-10-16 17:43:02 +00:00
(
"id",
2021-10-16 17:43:02 +00:00
models.AutoField(
auto_created=True,
primary_key=True,
serialize=False,
verbose_name="ID",
2021-10-16 17:43:02 +00:00
),
),
(
"value",
2021-10-16 17:43:02 +00:00
models.CharField(
db_index=True,
max_length=50,
unique=True,
verbose_name="Value",
2021-10-16 17:43:02 +00:00
),
),
2016-10-13 05:59:41 +00:00
],
),
migrations.CreateModel(
name="Value",
2016-10-13 05:59:41 +00:00
fields=[
2021-10-16 17:43:02 +00:00
(
"id",
2021-10-16 17:43:02 +00:00
models.AutoField(
auto_created=True,
primary_key=True,
serialize=False,
verbose_name="ID",
2021-10-16 17:43:02 +00:00
),
),
("entity_id", models.IntegerField()),
("value_text", models.TextField(blank=True, null=True)),
("value_float", models.FloatField(blank=True, null=True)),
("value_int", models.IntegerField(blank=True, null=True)),
("value_date", models.DateTimeField(blank=True, null=True)),
("value_bool", models.NullBooleanField()),
("generic_value_id", models.IntegerField(blank=True, null=True)),
2021-10-16 17:43:02 +00:00
(
"created",
2021-10-16 17:43:02 +00:00
models.DateTimeField(
default=django.utils.timezone.now,
verbose_name="Created",
2021-10-16 17:43:02 +00:00
),
),
(
"modified",
models.DateTimeField(auto_now=True, verbose_name="Modified"),
2021-10-16 17:43:02 +00:00
),
(
"attribute",
2021-10-16 17:43:02 +00:00
models.ForeignKey(
on_delete=django.db.models.deletion.PROTECT,
to="eav.Attribute",
verbose_name="Attribute",
2021-10-16 17:43:02 +00:00
),
),
(
"entity_ct",
2021-10-16 17:43:02 +00:00
models.ForeignKey(
on_delete=django.db.models.deletion.PROTECT,
related_name="value_entities",
to="contenttypes.ContentType",
2021-10-16 17:43:02 +00:00
),
),
(
"generic_value_ct",
2021-10-16 17:43:02 +00:00
models.ForeignKey(
blank=True,
null=True,
on_delete=django.db.models.deletion.PROTECT,
related_name="value_values",
to="contenttypes.ContentType",
2021-10-16 17:43:02 +00:00
),
),
(
"value_enum",
2021-10-16 17:43:02 +00:00
models.ForeignKey(
blank=True,
null=True,
on_delete=django.db.models.deletion.PROTECT,
related_name="eav_values",
to="eav.EnumValue",
2021-10-16 17:43:02 +00:00
),
),
2016-10-13 05:59:41 +00:00
],
),
migrations.AddField(
model_name="enumgroup",
name="values",
field=models.ManyToManyField(to="eav.EnumValue", verbose_name="Enum group"),
2016-10-13 05:59:41 +00:00
),
migrations.AddField(
model_name="attribute",
name="enum_group",
2021-10-16 17:43:02 +00:00
field=models.ForeignKey(
blank=True,
null=True,
on_delete=django.db.models.deletion.PROTECT,
to="eav.EnumGroup",
verbose_name="Choice Group",
2021-10-16 17:43:02 +00:00
),
2016-10-13 05:59:41 +00:00
),
]