Aşağıdakileri bir Django filtresinde mantıksal olarak temsil etmek için uğraşıyorum. Bugün meydana gelen tüm olayları seçmek istediğiniz belirli bir yerde içinBugün gerçekleşen Django filtre olayları
class Location(models.Model):
name = models.CharField(max_length=255)
class Event(models.Model):
start_date = models.DateTimeField()
end_date = models.DateTimeField()
location = models.ForeignKeyField(Location)
objects = EventManager()
: Ben bir 'olay' modelini ve olarak temsil edilebilir bir konum modeli var. Ben Eventmanager bir 'bookings_today' yöntemiyle çeşitli stratejiler denedim ama sağ filtre sözdizimi bana eludes: Bu kez sıfırlar olarak başarısız
class EventManager(models.Manager):
def bookings_today(self, location_id):
bookings = self.filter(location=location_id, start=?, end=?)
tarihi(), ve gün boyunca zaman için kritik Bu uygulama, aynı tarih ve en fazla tarihler için geçerlidir ve bunları kitap ayracı olarak kullanır. Buna ek olarak, birden çok olası geçerli konfigürasyon vardır:
start_date < today, end_date during today
start_date during today, end_date during today
start_date during today, end_date after today
Ben farklı seçenekler bütün seti kod gerek veya daha basit ve zarif bir yöntem yoktur musunuz?
sql @danielroseman tarafından bu yanıt ayrıca bkz ARASINDAKİ için aralık operatörü de bakabilirsiniz: http://stackoverflow.com/questions/3963201/ iki tarih arasında django ile nasıl bir seçim yaparsınız –