Comments 5
Нерасширяемое, неуправляемое дополнение, которое стоит выкинуть вместе с flatpages.
Переопределние objects в модели — bad practise.
Те, кому это нужно реализовать подобную функциональность, сделают это через свои модели, менеджеры и мидлвари без привязке с закостеневшей логике.
Переопределние objects в модели — bad practise.
Те, кому это нужно реализовать подобную функциональность, сделают это через свои модели, менеджеры и мидлвари без привязке с закостеневшей логике.
+1
Не совсем понял про objects, однако согласен со второй частью комментария.
На своих проектах делаю так:
# models.py -------------------------
class Site(models.Model):
# название, куча вспомогательных полей
domain = models.CharField(...)
class Info(models.Model):
# куча информационных полей
site = models.ForeignKey(Site, ...)
# middlewares.py -------------------------
class SiteMiddleware(models.Model):
def process_request(self, request):
domain = request.META['HTTP_HOST']
site = Site.objects.filter(domain=domain).first()
if not site:
raise Http404()
setattr(request, 'site', site)
# views.py -------------------------
class IndexView(ListView):
def get_queryset(self):
return Info.objects.filter(site=self.request.site)
+1
xammi-1, сейчас все именно так, думаю, у большинства. И у меня тоже так было.
Идея, которую не доделали в CurrentSiteManager, в том, что в для IndexView достаточно тогда только указать:
Согласен со всеми комментаторами, что:рожки да ножки названия и идея.
Идея, которую не доделали в CurrentSiteManager, в том, что в для IndexView достаточно тогда только указать:
class IndexView(ListView):
model = Info
Остальное должен был бы сделать CurrentSiteManager, если б он правильно работал с рождения. Но увы, пришлось его допилить, но теперь у меня в проектах нет ни одного filter(site=self.request.site)Согласен со всеми комментаторами, что:
сделают это через свои модели, менеджеры и мидлвариa от Django у меня остались лишь
0
А зачем вообще все пихать в одну базу? Какие преимущества по вашему?
С одной админкой(если уж сильно надо) много чего можно сделать, к примеру, есть router для db.
С одной админкой(если уж сильно надо) много чего можно сделать, к примеру, есть router для db.
0
Sign up to leave a comment.
Зачем вам может понадобиться SITE_ID в настройках Django