2010-04-14 6 views
0

Je programme sur py avec django. J'ai des modèles: Editer ForeignKey à partir de la table "enfant"

 
class Product(mymodels.Base): 
    title = models.CharField() 
    price = models.ForeignKey(Price) 
    promoPrice = models.ForeignKey(Price, related_name="promo_price")

class Price(mymodels.Base): value = models.DecimalField(max_digits=10, decimal_places=3) taxValue = models.DecimalField("Tax Value", max_digits=10, decimal_places=3) valueWithTax = models.DecimalField("Value with Tax", max_digits=10, decimal_places=3)

Je veux voir INPUT pour les deux prix lors de l'édition du produit, mais ne trouve aucune possibilité de le faire. inlines = [...] ne fonctionne que de Price to Product, ce qui est stupide dans ce cas.

Merci pour votre avis.

+1

Je pense que vous avez besoin faire votre propre forme et dire à admin utiliser. – diegueus9

+0

Je pense que vous devriez reconsidérer vos modèles. Le prix ne semble pas devoir être son propre modèle. Je voudrais avoir des prix et promoPrice être des champs numériques et puis avoir taxValue et valueWithTax être des propriétés de la classe de produit – Zach

Répondre

0

Pourquoi ne pas l'utiliser à la place?

class Product(mymodels.Base): 
    title = models.CharField() 
    price = models.DecimalField(max_digits=10, decimal_places=3) 
    tax = models.DecimalField(max_digits=10, decimal_places=3) 
    promo_price = models.DecimalField(max_digits=10, decimal_places=3) 
    promo_tax = models.DecimalField(max_digits=10, decimal_places=3) 

    def price_with_tax(self): 
     return self.price + self.tax 

    def promo_price_with_tax(self):\ 
     return self.promo_price + self.promo_tax\ 

(impôt sur le post-scriptum et promo_tax pourraient être de bons candidats pour être ForeignKeys aux modèles TaxRate)

Questions connexes