À l'aide de datetime pour comparer avec les dates dans Django

J'ai une question dans Django sur comment vous pouvez comparer les dates de résoudre un certain nombre de solutions. Par exemple, j'ai un datefield dans mon models.py Comme ci-dessous.

class Invoice(models.Model):
    payment_date = models.DateTimeField()

Ce que je veux être en mesure de faire est de demander si la est un moyen de comparer un datetime.maintenant, avec un DateTimeField. Par exemple, si j'avais une liste de dates de paiement et j'ai voulu comparer avec datetime maintenant. Le payment_date qui sont en retard dans leurs paiements sont indiqués en cause. Sinon, la valeur est zéro.

Voici mon point de vue pour montrer ce qui se passe. J'ai essayé jusqu'à présent mais j'obtiens une valeur de 0 pour payment_date qui sont plus tard à la date de paiement.

Modifier voici mes derniers points de vue. La chose drôle est que j'ai l'impression de recevoir la grâce = invoice_gross pour tous les résultats, contrairement à avant, quand je recevais tous les 0s. Si cela ne fonctionne toujours pas correctement.

@login_required
def homepage(request):
    invoices_list = Invoice.objects.all()
    invoice_name = invoices_list[0].client_contract_number.client_number.name
    invoice_gross = invoices_list[0].invoice_gross
    payment_date = invoices_list[0].payment_date
    if payment_date <= datetime.now():
        owing = invoice_gross
        if payment_date > datetime.now():
            owing = 0
    return render_to_response(('index.html', locals()), {'invoices_list': invoices_list ,'invoice_name':invoice_name, 'invoice_gross':invoice_gross,'payment_date':payment_date,'owing':owing}, context_instance=RequestContext(request))

Oh, et ma table est essentiellement de faire quelque chose comme cela.

ID  Owing
1   100   (All the same value)
2   100
3   100
.   .
.   .
.   .

OriginalL'auteur Shehzad009 | 2011-01-05