update the models

This commit is contained in:
Andreas Zweili 2017-11-14 21:26:44 +01:00
parent f09ba05737
commit c754670931
2 changed files with 64 additions and 38 deletions

View File

@ -1,19 +1,26 @@
from django.contrib import admin
from django.contrib.auth.admin import UserAdmin as BaseUserAdmin
from django.contrib.auth.models import User
# Register your models here.
from .models import Article
from .models import Order
from .models import Person
from .models import City
from .models import Picture
from .models import OrderOfGoods
from .models import Category
from .models import Option
from .models import Settings
from .models import (Article, Order, Person, City, Picture, OrderOfGoods,
Category, Option, Settings)
class PersonInline(admin.StackedInline):
model = Person
can_delete = False
verbose_name_plural = 'person'
class UserAdmin(BaseUserAdmin):
inlines = (PersonInline, )
admin.site.unregister(User)
admin.site.register(User, UserAdmin)
admin.site.register(Article)
admin.site.register(Order)
admin.site.register(Person)
admin.site.register(City)
admin.site.register(Picture)
admin.site.register(OrderOfGoods)

View File

@ -4,81 +4,100 @@ from django.contrib.auth.models import User
# Create your models here.
class Category(models.Model):
name = models.CharField(max_length=200, unique=True)
article_id = models.ForeignKey('self')
article = models.ForeignKey('self')
def __str__(self):
return self.name
class Option(models.Model):
name = models.CharField(max_length=200, unique=True)
value = models.IntegerField(default=5)
def __str__(self):
return self.name
class Settings(models.Model):
option_id = models.ForeignKey(Option, on_delete=models.CASCADE)
option = models.ForeignKey(Option, on_delete=models.CASCADE)
enabled = models.BooleanField(default=False)
class DeliveryStatus(models.Model):
name = models.CharField(max_length=50, unique=True)
class ArticleStatus(models.Model):
name = models.CharField(max_length=50, unique=True)
def __str__(self):
return self.name
class ExchangeRate(models.Model):
name = models.CharField(max_length=200, unique=True)
exchange_rate_to_chf = models.FloatField(max_length=5)
def __str__(self):
return self.name
class Article(models.Model):
name = models.CharField(max_length=200)
description = models.CharField(max_length=2000)
stock = models.FloatField(max_length=5)
status_id = models.ForeignKey(ArticleStatus, on_delete=models.CASCADE)
status = models.ForeignKey(ArticleStatus)
price_in_chf = models.DecimalField(max_digits=19, decimal_places=2)
class OrderOfGoods(models.Model):
article_id = models.ForeignKey(Article, on_delete=models.CASCADE)
amount = models.FloatField(max_length=5)
delivery_date = models.DateField()
order_date = models.DateTimeField(auto_now_add=True)
class Picture(models.Model):
name = models.CharField(max_length=200, unique=True)
article_id = models.ForeignKey(Article, on_delete=models.CASCADE)
def __str__(self):
return self.name
class OrderStatus(models.Model):
name = models.CharField(max_length=200, unique=True)
def __str__(self):
return self.name
class OrderOfGoods(models.Model):
article = models.ForeignKey(Article)
amount = models.FloatField(max_length=5)
delivery_date = models.DateField()
order_date = models.DateTimeField(auto_now_add=True)
order_status = models.ForeignKey(OrderStatus)
class Picture(models.Model):
name = models.CharField(max_length=200, unique=True)
article = models.ForeignKey(Article, on_delete=models.CASCADE)
def __str__(self):
return self.name
class Order(models.Model):
user_id = models.ForeignKey(User, on_delete=models.CASCADE)
article_id = models.ManyToManyField(Article)
order_status_id = models.ForeignKey(OrderStatus)
user = models.ForeignKey(User, on_delete=models.CASCADE)
article = models.ManyToManyField(Article)
order_status = models.ForeignKey(OrderStatus)
class ShoppingCart(models.Model):
name = models.CharField(max_length=200)
user_id = models.ForeignKey(User, on_delete=models.CASCADE)
article_id = models.ManyToManyField(Article)
user = models.ForeignKey(User, on_delete=models.CASCADE)
article = models.ManyToManyField(Article)
def __str__(self):
return self.name
class City(models.Model):
name = models.CharField(max_length=200)
plz = models.PositiveSmallIntegerField()
zip_code = models.PositiveSmallIntegerField()
def __str__(self):
return self.name
class Salution(models.Model):
class Salutation(models.Model):
name = models.CharField(max_length=20)
class Person(models.Model):
first_name = models.CharField(max_length=200)
last_name = models.CharField(max_length=200)
salution_id= models.ForeignKey(Salution)
city_id= models.ForeignKey(City)
salutation = models.ForeignKey(Salutation)
city = models.ForeignKey(City)
street_name = models.CharField(max_length=200)
street_number = models.CharField(max_length=4)
user = models.OneToOneField(User, on_delete=models.CASCADE)
def __str__(self):
return self.last_name