10 Eylül 2016 Cumartesi

İlişkisel tablolarda related_name'in template(html) etkisi:

class Customer(models.Model):  #müşteri    code = models.CharField("Kod", max_length=30, unique = True, blank=True)
    name = models.CharField("Adı", max_length=200)
    address = models.TextField("Adres", blank=True)
    region = models.CharField("İlçe", max_length=100, blank=True)
    city = models.CharField("İl", max_length=100, blank=True)

class Sales(models.Model): 
    customer = models.ForeignKey(Customer, on_delete=models.CASCADE, verbose_name='Müşteri')
    product = models.ForeignKey(Product, on_delete=models.CASCADE, verbose_name='Ürün')
    created_date = models.DateField("Tarih", default=timezone.now)
    quantity = models.IntegerField("Adet", default=1)
    price = models.DecimalField("Fiyat", max_digits=11, decimal_places=2, blank=True, null=True)
    total = models.DecimalField("Tutar", max_digits=11, decimal_places=2, blank=True, null=True)
    user = models.ForeignKey(User, null=True)


Sales modelinde related_name kullanılmazsa template içinde for kullanımı:

{% for sales in customer.sales_set.all %}


Eğer sales related_name kullanılırsa yani

customer = models.ForeignKey(Customer, on_delete=models.CASCADE, related_name='sales', verbose_name='Müşteri')

olursa template içinde for kullanımı:

{% for sales in customer.sales.all %}

Hiç yorum yok:

Yorum Gönder