Я им пользовался, в итоге пришлось назначить на сайте дефолтной другую ветку, первую удалить и запушить снова. Еще пришлось перед этим локальный репозиторий скопировать и снова зарегистрировать в git.
Скажите пожалуйста, а если я делаю тестовое задание и там не указано какую бд использовать, можно ли оставить SQLite, если это парсер серверных логов?---------- Добавлено 12.04.2018 в 11:25 ----------У меня admin переадресовывается на admin/login, поэтому не понимаю, что Вы имели в виду.
Сделал +=, оно не работает. А старое работает.
И хочу узнать, правильно ли я понимаю, что в записи
path(r'', include('parsercore.urls', namespace='search')),
слово search означает первое слово search в записи
url(r'^search/', views.ResultView.as_view(), name='search'),
то есть namespace - это указатель на регулярное выражение?
Я исправил urls. Они работают, но теперь не понимаю, почему они работают.
urlpatterns = [ path(r'admin/', admin.site.urls),
]
urlpatterns = [ url(r'^$', views.IndexView.as_view(), name='index'),
url(r'^show/', views.ResultView.as_view(), name='show'),
postgres через консоль запускается командой psql и сразу требует пароль. Его я не знаю. Как сбросить пароль?
Я попробовал. Такая же ошибка.
У меня есть модели. Я сначала на SQLite сделал.
да, я создал базу с таким именем. urls позже исправлю. А можно подробнее про то, что Вы написали про schema? Пожалуйста ссылкой или подробнее, чтобы знать, что гуглить.
Я попробовал сделать values(param1).annotate(param2), но вместо GROUP_BY происходит фильтрация, и подсчет доступен только для строк по отдельности, как будто values() не написано.
result = Entries.objects.values('remote_host').annotate(remote_host_count=Count('remote_host'),
method_count=Count('method'),
bytes_sum=Sum('bytes_returned'))
В браузере вместо таблицы со всеми параметрами запроса только IP адреса, то есть остальные пустые. В консоли
print(result[1])
{'remote_host': '46.72.177.4', 'remote_host_count': 18, 'method_count': 18, 'bytes_sum': 78813}
Можно ли сделать вот так:
result = Entries.objects.all().annotate(Entries.objects.values('method').annotate(method_count=Count('method')))---------- Добавлено 11.04.2018 в 12:15 ----------Я уже разобрался с предыдущим вопросом. теперь я думаю как сделать сортировку списка словарей в QuerySet.
Все это выглядит вот так:
<QuerySet [{'method': 'GET', 'method_count': 96, 'bytes_sum': 409248}, {'method': 'POST', 'method_count': 96, 'bytes_sum': 431424}]>
Надо сделать сортировку по значению ключа bytes_sum по убыванию. Сортировать словари в списках я умею, а как сделать в QuerySet?
Я посмотрел, про аннотацию и агрегацию, возник вопрос. Если я хочу сосчитать уникальные IP, пересчитать все методы и их количество по именам, сумму байтов ответа по всем запросам, могу ли я сделать это одним запросом? Пока я нашел только такое:
.values('IP').annotate(Sum('ip'))
А хочется увидеть такое:
.values([fields_list]).annotate(Sum('ip'), Sum('method_get'), Sum('method_post'))
Как это сделать?
Спасибо за совет. А с каким из этих инструментов можно наиболее быстро и просто стартануть?