Skip to content

Commit e3d4392

Browse files
create models
1 parent 1e215b5 commit e3d4392

File tree

4 files changed

+77
-0
lines changed

4 files changed

+77
-0
lines changed

server/db.sqlite3

12 KB
Binary file not shown.

server/djangoapp/admin.py

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,27 @@
11
from django.contrib import admin
22
# from .models import related models
3+
from .models import CarMake, CarModel
34

45

56
# Register your models here.
67

78
# CarModelInline class
9+
class CarModelInline(admin.StackedInline):
10+
model = CarModel
11+
extra = 6
812

913
# CarModelAdmin class
14+
class CarModelAdmin(admin.ModelAdmin):
15+
list_display = ['name', 'dealer_id', 'c_type', 'year']
16+
search_fields = ['name']
17+
1018

1119
# CarMakeAdmin class with CarModelInline
20+
class CarMakeAdmin(admin.ModelAdmin):
21+
inlines = [CarModelInline]
22+
list_display = ['name', 'description']
23+
search_fields = ['name']
1224

1325
# Register models here
26+
admin.site.register(CarMake, CarMakeAdmin)
27+
admin.site.register(CarModel)

server/djangoapp/models.py

Lines changed: 63 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,12 @@
99
# - Description
1010
# - Any other fields you would like to include in car make model
1111
# - __str__ method to print a car make object
12+
class CarMake(models.Model):
13+
name = models.CharField(null=False, max_length=30)
14+
description = models.CharField(null=False, max_length=30)
15+
16+
def __str__(self):
17+
return self.name + "" + self.description
1218

1319

1420
# <HINT> Create a Car Model model `class CarModel(models.Model):`:
@@ -19,9 +25,66 @@
1925
# - Year (DateField)
2026
# - Any other fields you would like to include in car model
2127
# - __str__ method to print a car make object
28+
class CarModel(models.Model):
29+
TYPES = (
30+
("SEDAN", "Sedan"), ("SUV", "SUV"), ("WAGON", "Wagon"), ("LIMOUSINE", "Limousine"), ("BATMOBILE", "Batmobile")
31+
)
32+
33+
make = models.ForeignKey(CarMake, on_delete=models.CASCADE)
34+
name = models.CharField(null=False, max_length=30)
35+
c_type = models.CharField(max_length=30, choices=TYPES)
36+
dealer_id = models.IntegerField()
37+
year = models.DateField()
38+
39+
def __str__(self):
40+
return "Name: " + self.name + \
41+
" Make Name: "+ self.make.name + \
42+
" Type: " + self.c_type + \
43+
" Dealer ID: " + str(self.dealer_id)+ \
44+
" Year: " + str(self.year)
45+
2246

2347

2448
# <HINT> Create a plain Python class `CarDealer` to hold dealer data
49+
class CarDealer:
2550

51+
def __init__(self, address, city, full_name, id, lat, long, short_name, st, zip):
52+
# Dealer address
53+
self.address = address
54+
# Dealer city
55+
self.city = city
56+
# Dealer Full Name
57+
self.full_name = full_name
58+
# Dealer id
59+
self.id = id
60+
# Location lat
61+
self.lat = lat
62+
# Location long
63+
self.long = long
64+
# Dealer short name
65+
self.short_name = short_name
66+
# Dealer state
67+
self.st = st
68+
# Dealer zip
69+
self.zip = zip
70+
71+
def __str__(self):
72+
return "Dealer name: " + self.full_name
2673

2774
# <HINT> Create a plain Python class `DealerReview` to hold review data
75+
class DealerReview:
76+
def __init__(self, dealership, name, purchase, review, purchase_date, car_make, car_model, car_year,sentiment, id):
77+
self.dealership=dealership
78+
self.name=name
79+
self.purchase=purchase
80+
self.review=review
81+
self.purchase_date=purchase_date
82+
self.car_make=car_make
83+
self.car_model=car_model
84+
self.car_year=car_year
85+
self.sentiment=sentiment #Watson NLU service
86+
self.id=id
87+
88+
def __str__(self):
89+
return "Review: " + self.review +\
90+
" Sentiment: " + self.sentiment

server/manage.py

100755100644
File mode changed.

0 commit comments

Comments
 (0)