class Shop(models.Model):
#shop_user = models.ForeignKey(settings.USER_AUTH_MODEL, blank=False, null=False)
product = models.ManyToManyField(Product, related_name='myshop',null=False, blank=True)
Title = models.CharField(max_length=120, null=False)
image = models.ImageField(upload_to=image_upload_to_shop, null=True)
location = models.CharField(max_length=120)
def __unicode__(self):
return str(self.Title)
class Product(models.Model):
#user = models.ForeignKey(settings.USER_AUTH_MODEL)
title = models.CharField(max_length=120)
description = models.TextField(blank=True, null=True)
price = models.DecimalField(decimal_places=2, max_digits=20)
publish_date = models.DateTimeField(auto_now=False, auto_now_add=False, null=True, blank= True)
expire_date = models.DateTimeField(auto_now=False, auto_now_add=False, null=True, blank=True)
active = models.BooleanField(default=True)
categories = models.ManyToManyField('Category', blank=True)
default = models.ForeignKey('Category', related_name='default_category', null=True, blank=True)
hitcounts = GenericRelation(HitCount, content_type_field='content_type', object_id_field='object_pk',)
def __unicode__(self): #def __str__(self):
return self.title
I only intend to show products added by the shop owner.
products = Product.objects.filter(shop__shop_user=request.user)
Also I need to register shop using built-in auth system so how do I do that
should I add user field in Shop or in Product.
class ProductAdmin(admin.ModelAdmin):
#...
exclude = ('shop_user',)
def save_model(self, request, obj, form, change):
if not change:
#set user on create only
obj.shop_user = request.user
obj.save()