Stars y Opinion se incluyeron en ListItem

Esto porque al final eran relaciones 1 a 1 y era preferible que
estuvieran incluidos en un solo modelo, de esta forma hay menos llamadas
a la base de datos desde la api y una api mas simple de realizar y
llamar

Realmente el unico modelo que quedo "extraño" es el de opinion helpfull
que tendra que pasar a ser ... listitemhelpful? pero el nombre
opinionhelpful es mas coherente
This commit is contained in:
Daniel Cortes
2020-07-14 10:31:32 -04:00
parent 1a36bec50a
commit ce76f76dfb
5 changed files with 52 additions and 42 deletions

View File

@@ -1,6 +1,7 @@
# Generated by Django 3.0.7 on 2020-06-28 22:41
# Generated by Django 3.0.7 on 2020-07-14 14:27
from django.conf import settings
import django.core.validators
from django.db import migrations, models
import django.db.models.deletion
@@ -25,33 +26,17 @@ class Migration(migrations.Migration):
name='ListItem',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('stars', models.IntegerField(default=0, validators=[django.core.validators.MinValueValidator(0), django.core.validators.MaxValueValidator(5)])),
('opinion', models.TextField(default='')),
('entity', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='lists.Entity')),
],
),
migrations.CreateModel(
name='Opinion',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('opinion_text', models.TextField()),
('entity', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='lists.ListItem')),
('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)),
],
),
migrations.CreateModel(
name='Tag',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('name', models.CharField(max_length=50)),
('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)),
],
),
migrations.CreateModel(
name='Stars',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('quantity', models.IntegerField()),
('entity', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='lists.ListItem')),
('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)),
('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, related_name='tags', to=settings.AUTH_USER_MODEL)),
],
),
migrations.CreateModel(
@@ -59,14 +44,14 @@ class Migration(migrations.Migration):
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('vote', models.CharField(choices=[('Y', 'Si'), ('N', 'No'), ('F', 'Divertida')], max_length=1)),
('opinion', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='lists.Opinion')),
('opinion', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='lists.ListItem')),
('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL)),
],
),
migrations.AddField(
model_name='listitem',
name='tags',
field=models.ManyToManyField(to='lists.Tag'),
field=models.ManyToManyField(blank=True, related_name='list', to='lists.Tag'),
),
migrations.AddField(
model_name='listitem',