Diciamo che ho due modelli che cercano in questo modo:Come recuperare i primi due prodotti per ogni tipo di prodotto?
class ProductType(models.Model): product_type = models.CharField(max_length=100) class Product(models.Model): name = models.CharField(max_length=200) slug = models.SlugField() product_type = models.ForeignKey(ProductType) score = models.PositiveIntegerField(default=0)
ora voglio andare a prendere i primi due prodotti (i due con punteggio più alto) da ogni ProductType. Quindi se ho telefoni, computer, TV come ProductTypes voglio i due migliori telefoni, computer, TV.
Siccome non so nemmeno come farlo in MySQL, ho provato a cercare la soluzione MySQL ma quelli che trovo sono estremamente complessi e questo non mi sembra una cosa estremamente complessa da fare.
Sono propenso a creare un proprio modello per i prodotti migliori e ho un cronjob per risolvere questo problema, ma mi piacerebbe vedere se c'è una soluzione più semplice a questo.
Soluzione intelligente, mi piace! Grazie. – rinti
non capisco ... perché usi il ciclo? – IProblemFactory
Si utilizza solo il ciclo for quando arriva il momento di accedere ai primi due prodotti (come elencarli in un modello o qualsiasi altra cosa). – Adam