Python · 2858 bytes Raw Blame History
1 # Generated by Django 5.2.3 on 2025-06-27 20:14
2
3 import django.core.validators
4 import django.db.models.deletion
5 import django.utils.timezone
6 from django.db import migrations, models
7
8
9 class Migration(migrations.Migration):
10
11 initial = True
12
13 dependencies = []
14
15 operations = [
16 migrations.CreateModel(
17 name="Restaurant",
18 fields=[
19 (
20 "id",
21 models.BigAutoField(
22 auto_created=True,
23 primary_key=True,
24 serialize=False,
25 verbose_name="ID",
26 ),
27 ),
28 (
29 "place_id",
30 models.CharField(db_index=True, max_length=255, unique=True),
31 ),
32 ("name", models.CharField(max_length=255)),
33 ("address", models.TextField()),
34 ("latitude", models.FloatField()),
35 ("longitude", models.FloatField()),
36 ("created_at", models.DateTimeField(default=django.utils.timezone.now)),
37 ("average_rating", models.FloatField(blank=True, null=True)),
38 ("total_ratings", models.IntegerField(default=0)),
39 ],
40 options={
41 "ordering": ["-created_at"],
42 "indexes": [
43 models.Index(
44 fields=["latitude", "longitude"],
45 name="api_restaur_latitud_60ec88_idx",
46 )
47 ],
48 },
49 ),
50 migrations.CreateModel(
51 name="Rating",
52 fields=[
53 (
54 "id",
55 models.BigAutoField(
56 auto_created=True,
57 primary_key=True,
58 serialize=False,
59 verbose_name="ID",
60 ),
61 ),
62 (
63 "rating",
64 models.IntegerField(
65 validators=[
66 django.core.validators.MinValueValidator(1),
67 django.core.validators.MaxValueValidator(5),
68 ]
69 ),
70 ),
71 ("review", models.TextField()),
72 ("created_at", models.DateTimeField(default=django.utils.timezone.now)),
73 (
74 "restaurant",
75 models.ForeignKey(
76 on_delete=django.db.models.deletion.CASCADE,
77 related_name="ratings",
78 to="api.restaurant",
79 ),
80 ),
81 ],
82 options={
83 "ordering": ["-created_at"],
84 },
85 ),
86 ]