Уведомления

Группа в Telegram: @pythonsu

#1 Окт. 1, 2012 07:17:32

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

Из строки в datetime

Моё ИМХО - так делать не стоит.
Я бы сделал вот так.

class Event(models.Model):
    moment=models.DateTimeField()
#
#
#
#
class Index(TemplateView):
    template_name = 'main/index.html'
    def get_context_data(self, **kwargs):
        context=super(Index,self).get_context_data(**kwargs)
        context['all_events']=Event.objects.all().order_by('moment')
       # from this
        now_date=datetime.date.today()
      
        now_time=datetime.time(23,59,59)
        todays=datetime.datetime.combine(now_date,now_time)
        context['today_or_later_events']=Event.objects.filter(moment__lte=todays).order_by('moment')
        #to this
        return context

Все события
July 12, 2012, 7:32 p.m.
Sept. 7, 2012, 6:26 p.m.
Oct. 1, 2012, 8:22 p.m.
Oct. 1, 2012, 10:43 p.m.
Oct. 1, 2012, 11:32 p.m.
Oct. 1, 2012, 11:32 p.m.
Oct. 2, 2012, 12:34 p.m.
Oct. 2, 2012, 12:34 p.m.

Те, которые начнутся сегодня или ранее
July 12, 2012, 7:32 p.m.
Sept. 7, 2012, 6:26 p.m.
Oct. 1, 2012, 8:22 p.m.
Oct. 1, 2012, 10:43 p.m.
Oct. 1, 2012, 11:32 p.m.
Oct. 1, 2012, 11:32 p.m.



Офлайн

#2 Окт. 1, 2012 07:19:55

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

Из строки в datetime

andreiru
Про get_or_404 первый раз слышу, мне выдаёт ошибку:

На память писал, без проверки, надо конечно-же так

from django.shortcuts import get_object_or_404
def my_view(request):
    my_object = get_object_or_404(MyModel, pk=1)



Офлайн

#3 Окт. 1, 2012 09:12:06

andreiru
От:
Зарегистрирован: 2010-11-06
Сообщения: 154
Репутация: +  0  -
Профиль   Отправить e-mail  

Из строки в datetime

FishHook

class Index(TemplateView):
    template_name = 'main/index.html'
    def get_context_data(self, **kwargs):
        context=super(Index,self).get_context_data(**kwargs)
        context['all_events']=Event.objects.all().order_by('moment')
       # from this
        now_date=datetime.date.today()
      
        now_time=datetime.time(23,59,59)
        todays=datetime.datetime.combine(now_date,now_time)
        context['today_or_later_events']=Event.objects.filter(moment__lte=todays).order_by('moment')
        #to this
        return context

Как это называется и где использовать ?:)



Офлайн

#4 Окт. 1, 2012 09:33:34

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

Из строки в datetime

Это называется Class Based Views, но из этого кода, нас интересуют только кверисеты.
Это опять же ИМХО, но использовать текстовый поиск для дат, как в твоем варианте - не есть гуд.



Офлайн

#5 Окт. 2, 2012 10:10:04

andreiru
От:
Зарегистрирован: 2010-11-06
Сообщения: 154
Репутация: +  0  -
Профиль   Отправить e-mail  

Из строки в datetime

Спасибо разобрался !)

Ещё вопрос немного не по теме:

Получается что у меня навигация по дате бесконечная, гугл уже наиндексировал 1 370 страниц, нужно ли с эти что-то делать или поисковики сами разберуться ?



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version