@pydjango
Django

Полезная информация и правила: https://github.com/amureki/django_faq Вакансии и резюме: @django_jobs Пофлудить идём сюда: @django_flood Статистика чата: combot.org/chat/-1001063854692

1741 members

Архив канала @pydjango 14 февраля 2017 г.

04:11:29 ДП
User 101053005
User 177174313
народ, вопрос немного не в плостксти джанги. Пытаюсь юзать Atom с джангой... ну и валятся подобные ошибки
Тут вместо len(queryset.all()) лучше использовать queryset.count()
06:30:53 ДП
User 177174313
User 101053005
Тут вместо len(queryset.all()) лучше использовать queryset.count()
ага, я поню что лучше что-то другое юзать, а не all(), а подсказать то некому... atom...
06:32:32 ДП
User 101053005
а atom тут при чем? :)
07:20:20 ДП
User 2895769
а на чём сейчас модно парсеры разных сайтов писать? помню, Scrapy есть...
07:24:44 ДП
User 57296486
User 2895769
а на чём сейчас модно парсеры разных сайтов писать? помню, Scrapy есть...
да восновном и используют scrapy или grab
07:26:27 ДП
User 2895769
а что лучше?.. допустим, задача - найти список сайтов на определённой CMS
07:28:49 ДП
User 57296486
я если честно не оч много с этими либами работал и не могу сказать что лучше. в зарубежных проектах чаще встречается scrapy, в русских grab
07:28:59 ДП
User 2895769
понял
07:29:09 ДП
User 57296486
больше юзают scrapy
07:35:15 ДП
User 136465499
User 57296486
да восновном и используют scrapy или grab
большое спасибо за полезную наводку!
08:36:15 ДП
User 207905056
привет, подскажите, rest, CreateAPIView стоит проверка по полю на уникальность, через qs.exists(), если есть то идет соответствующий Response, если нет то serializer.save и тд, вроде логично, но один черти валиться пачками IntegrityError, откуда ноги растут?
08:46:07 ДП
User 132874636
если у тебя есть конкуретные запросы, то пока в водном потоке выполинлся qs.exists() в другом в это время создалась запись
08:47:55 ДП
User 132874636
лучше использовать upsert, хотя ORM такое не поддерживает, надо руками писать
08:56:35 ДП
User 18500084
В with transaction.atomic можно обернуть
08:58:23 ДП
User 176661544
Ребят, есть какое-то приложение аналитики для django, который записывает действия пользователей и предоставляет детальную статистику поведения. Или стоит внешний сервис какой-то использовать?
09:00:39 ДП
User 132874636
User 176661544
Ребят, есть какое-то приложение аналитики для django, который записывает действия пользователей и предоставляет детальную статистику поведения. Или стоит внешний сервис какой-то использовать?
не поверишь, яндекс метрика и гугл аналитикс
09:01:52 ДП
User 132874636
User 18500084
В with transaction.atomic можно обернуть
и как это должно помочь в данном случае?
09:03:00 ДП
User 18500084
Так фильтр и сейв будут в одной дб транзакции, значит не будет дубликатов
09:04:21 ДП
User 132874636
Дак их и так не будет, там же констрейнты, вон написано выше  IntegrityError, А эксепшен один хрен вылетит, т.к. одна из таранзакий не пройдет.
09:05:05 ДП
User 18500084
Интересно, какая бд, кстати
09:10:07 ДП
User 176661544
User 132874636
не поверишь, яндекс метрика и гугл аналитикс
То есть лучше сторонней метрикой пользоваться, чем создавать своё решение?
09:12:50 ДП
User 132874636
User 176661544
То есть лучше сторонней метрикой пользоваться, чем создавать своё решение?
от задачи зависит. для некоторых задач имеет смысл писать свое, но для 99% нет.
09:20:46 ДП
User 176661544
User 132874636
от задачи зависит. для некоторых задач имеет смысл писать свое, но для 99% нет.
Разве она позволяет смотреть действия пользователя? Типа, user01 Нажал "Войти" - Нажал "Главная" - Нажал на новость и тд
09:21:12 ДП
User 132874636
да, вебвизор называется
09:21:28 ДП
User 176661544
Спасибо
09:26:35 ДП
User 194990550
Django 1.6 python2 - когда редактируешь форму - везде ['u' blabla] вот так текст отформатируется, как лечить?
09:34:21 ДП
User 132874636
User 194990550
Django 1.6 python2 - когда редактируешь форму - везде ['u' blabla] вот так текст отформатируется, как лечить?
это ошибки в форме или поля ввода или че7
09:34:58 ДП
User 194990550
Заполнил форму, все хорошо, потом нажимаю Edit form - и там такое Было например Test message = там отображатеся  [u'test message]
09:36:22 ДП
User 132874636
давай ты как-то сразу спросишь так, чтобы все поняли. Какой элемент или переменная или атрибут, что отображает этот текст?
09:44:31 ДП
09:44:32 ДП
User 194990550
Есть Title и есть description - заполнил, все норм. нажимаю Edit -
09:46:11 ДП
User 194990550
Хм, кажется понял из-за чего проблема, но не знаю как пофиксить. 
Там типа создается Пост - сохраняется в session - показывается Preview и кнопки Submit / edit - после нажатия Edit вот такая вот чепуха.
10:18:50 ДП
User 167767298
У тебя они почему-то списками выводятся.
10:42:49 ДП
User 194990550
Самое забавное, что он так в этой форме ток выводит. на превью нормально и когда я нажимаю подтвердить тоже норм
10:44:37 ДП
User 169404603
значит ты плохо прочитал доку и впихиваешь неправильное при создании формы в коде
11:34:14 ДП
User 207905056
@amureki psql
02:28:26 ПП
User 177174313
User 57296486
да восновном и используют scrapy или grab
хм Всегда использовал Beautiful Soup и requests.. даже не знал про подобное
02:37:47 ПП
User 44072265
User 177174313
хм Всегда использовал Beautiful Soup и requests.. даже не знал про подобное
Ну ещё selenium для запущенных случаев
02:53:43 ПП
User 128333406
Beautiful Soup медленная же либа. lxml должен быстрее работать
03:39:35 ПП
User 175775933
User 128333406
Beautiful Soup медленная же либа. lxml должен быстрее работать
++
03:42:33 ПП
User 177174313
User 128333406
Beautiful Soup медленная же либа. lxml должен быстрее работать
Тесты не проводил. Но можно на выбор любой парсер подрубить. В том числе и lxml.
04:07:21 ПП
User 44072265
User 128333406
Beautiful Soup медленная же либа. lxml должен быстрее работать
должен, но если верстка невалидная то он к хуям летит
04:08:28 ПП
User 44072265
и каждый раз морока с установкой ибо оно должно компилиться(
04:29:41 ПП
User 109322233
User 128333406
Beautiful Soup медленная же либа. lxml должен быстрее работать
да
04:46:25 ПП
User 169404603
они ещё и разные, там столько интересного
04:57:55 ПП
User 67672937
А в честь кого Джанга названа Джангой ?
04:58:06 ПП
User 120578100
В честь меня
04:58:09 ПП
User 67672937
Откуда вообще слово это
04:58:22 ПП
User 120578100
Я по пьяни ляпнул
04:59:34 ПП
User 176661544
User 67672937
Откуда вообще слово это
Джанго освобождённый
05:00:47 ПП
User 176661544
Эта такая пиар компания задолго до выхода была
05:01:14 ПП
05:01:24 ПП
User 176661544
Многоходовочка
05:02:15 ПП
User 67672937
Нашел
Джанго Рейнхардт — музыкант, в честь которого получил название фреймворк
05:04:41 ПП
User 176661544
Музыку в студию
05:08:03 ПП
User 135467237
Привет. У меня проблема - не подгружаются картинки из бд. 
Прописал в settings 
MEDIA_URL = '/media/'
MEDIA_ROOT = os.path.join(BASE_DIR, 'media')
В urls в корне прописал 
+ static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
В HTML прописал 
<img src="{{ title.title_image.url }}">
Но при запросе всеравно выдает битое изображение
05:08:17 ПП
User 67672937
УХ ты!!!
https://music.yandex.ru/album/723786/track/6746239
music.yandex.ru/album/723786/track/6746239
Слушайте на Яндекс.Музыке
05:08:18 ПП
05:13:52 ПП
User 240629525
так глянь есть ли сама картинка в этой папке
05:14:25 ПП
05:14:55 ПП
User 240629525
у него уже стоит .url
05:16:12 ПП
User 135467237
да сохраняются
05:16:13 ПП
User 135467237
так глянь есть ли сама картинка в этой папке
05:18:39 ПП
User 135467237
я на xubuntu работаю
05:18:43 ПП
User 194990550
Покажи HTML тогда :)
05:19:05 ПП
05:20:04 ПП
User 194990550
Еще и код 200 вернулся, лол
05:20:19 ПП
User 240629525
оно тебе 200 вернуло, значит картинка есть, ты уверен что это то что вывелось и есть твоя картинка)
05:20:41 ПП
User 240629525
ctrl+f5 в браузере еще
05:20:45 ПП
User 240629525
все у тебя работает
05:20:57 ПП
User 135467237
я сам не вдоумении
05:21:05 ПП
User 194990550
/media/ попробуй или в админке по ссылки картинки перейди
05:21:07 ПП
User 240629525
обнови кеш браузера
05:22:10 ПП
User 135467237
перехожу через админку вываливается таже страница не с загрузившейся картинкой
05:22:13 ПП
User 135467237
ща обновлю
05:23:18 ПП
User 240629525
сервер картинку вернул, проблемы на стороне клиента, либо она битая, либо кеш, либо еще что
05:23:30 ПП
User 240629525
она не может отобразится
05:23:42 ПП
User 240629525
мейби битая кстати
05:23:44 ПП
User 194990550
Другой браузер
05:24:47 ПП
User 135467237
ну ща попробую все
05:33:21 ПП
User 135467237
поставил хром
05:33:27 ПП
User 135467237
почистил кэш
05:33:36 ПП
User 135467237
все так же...
05:33:53 ПП
User 135467237
ща попробую картинку поменять
05:39:31 ПП
User 135467237
капец ничего не помогает
05:42:04 ПП
User 135467237
может в модели дело ?
05:44:07 ПП
05:45:10 ПП
User 240629525
сделай wget
05:46:01 ПП
User 135467237
еще если я открываю 
http://127.0.0.1:8000/media/123.jpg
то мне страница выдается
05:48:36 ПП
User 135467237
ну это наверно потому что я  urls не прописал?
05:48:51 ПП
05:48:51 ПП
User 135467237
сделай wget
05:50:16 ПП
User 240629525
if settings.DEBUG:
    urlpatterns += staticfiles_urlpatterns()
    urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
05:50:24 ПП
User 240629525
в urls.py
05:53:17 ПП
05:55:42 ПП
User 240629525
debug должен быть False
05:56:29 ПП
User 240629525
да и еще зависит от того как ты запускаешь
05:56:51 ПП
User 135467237
ну у меня дебаг тру
05:57:01 ПП
User 135467237
с virtualenv
06:02:23 ПП
User 135467237
поставил debug False
06:02:32 ПП
User 135467237
ничего...
06:02:41 ПП
User 240629525
тьфу True должен быть, заговорился я
06:02:46 ПП
User 240629525
так что страница выдает?
06:02:50 ПП
User 240629525
или файл?
06:03:30 ПП
User 240629525
наверняка libs.url перебивает адрес
06:03:43 ПП
User 240629525
там что-то вроде (.*) поди
06:05:16 ПП
06:07:03 ПП
06:07:33 ПП
User 135467237
понял
06:08:09 ПП
User 240629525
вынеси код что я скинул выше libs.url, если критично ээто сохранить
06:08:19 ПП
06:08:51 ПП
User 240629525
^ вставь перед $
06:10:02 ПП
User 135467237
о. Заработало!
06:10:04 ПП
06:10:24 ПП
User 135467237
СПАСИБО БОЛЬШОЕ!
06:21:13 ПП
User 128333406
class RoleProposal(models.Model):
    """
    Представляет заявку пользователя на получение роли (тренер, спортсмен, родитель)
    """
    PENDING = 0
    CONFIRMED = 1
    REJECTED = 2

    STATUSES = (
        (PENDING, _('Pending')),
        (CONFIRMED, _('Confirmed')),
        (REJECTED, _('Rejected'))
    )
    status = models.PositiveIntegerField(choices=STATUSES, default=PENDING)
06:22:13 ПП
User 128333406
есть моделька, по дефолту один статус, но если статус вдруг изменяется, нужно создать пару других моделей и еще кое-какую логику сделать. Сигналы для этого случая right way будут?
06:23:50 ПП
User 240629525
моделей создать или записей?
06:24:06 ПП
User 240629525
в других моделях
06:24:14 ПП
User 128333406
инстансов других моделей именно
06:24:20 ПП
User 128333406
записей
06:24:22 ПП
User 97201888
Сигналы
06:24:38 ПП
User 240629525
да сигналы
06:24:42 ПП
06:25:12 ПП
User 128333406
ок, спасибо
06:32:48 ПП
User 97201888
Есть ли нормальные либы для кеширования orm?
06:34:41 ПП
User 240629525
я не нашел ничего вменяемого, для своих проектов написал свою, которая веширует all, filter и get
06:35:01 ПП
User 240629525
либо кривые, либо ничего не умеют
06:35:09 ПП
User 240629525
из тех что видел
06:35:09 ПП
06:35:18 ПП
User 97201888
Можешь поделиться?)
06:36:01 ПП
User 97201888
Я никому не скажу :D
06:37:07 ПП
User 240629525
да нет проблем в приват скину, но она написана под меня, может для твих нужд не подойдет, почитай ридми что умеет и она очень проста
06:37:23 ПП
User 97201888
Спасибо
06:38:28 ПП
User 128333406
я бы тоже посмотрел, мне прсто интересно, сам пока не писал подобное. Если не жалко
06:39:46 ПП
User 240629525
да посмотреть нет проблем
06:46:24 ПП
User 194990550
Го ссылку на гите:)
06:47:46 ПП
06:56:42 ПП
User 240629525
чет вас много
06:56:49 ПП
User 240629525
покидал кому интересно
07:00:16 ПП
User 128333406
спасибо
07:17:27 ПП
User 109322233
User 97201888
Есть ли нормальные либы для кеширования orm?
зачем такое? кешируют результат уже
07:17:44 ПП
User 109322233
или прослойка типа редиса, или самое простое таблицы в памяти
07:18:38 ПП
User 109322233
кешировать орм это ловить потом неконсисентность
07:20:32 ПП
User 240629525
так и есть, ты кешируешь результаты
07:27:47 ПП
User 88127526
User 135467237
по умолчанию runserver не прокидывает папку media
07:28:15 ПП
User 88127526
глянь, там файл этот есть?
07:54:21 ПП
User 149595952
Привет, джагонаты. Как закрыть доступ ко всему сайту, кроме как залогированых пользователей? Написать свой middleware? А то к каждой вьюхе не хочется писать login_required. Кто-то сталкивался?
07:55:17 ПП
User 240629525
да мидлваре
08:01:51 ПП
User 149595952
Даже готовая аппа уже есть: https://github.com/mgrouchy/django-stronghold. Как же приятно)
github.com/mgrouchy/django-stronghold
Get inside your stronghold and make all your Django views default login_required - mgrouchy/django-stronghold
08:11:07 ПП
User 205811567
как можно отрендерить записи из базы в шапке?
08:12:55 ПП
User 205811567
в базе лежат категории, их нужно всегда рендерить в шаблон, при этом шаблон родительский.
08:13:30 ПП
User 120578100
templatetag или context_processor
08:14:35 ПП
User 205811567
а есть на заметке хороший ман по templatetag? давно пробовал по доке - не получилось
08:17:39 ПП
User 120578100
User 205811567
а есть на заметке хороший ман по templatetag? давно пробовал по доке - не получилось
Попробуйте ещё раз по доке. Там всё понятно
08:20:41 ПП
User 120578100
https://docs.djangoproject.com/en/1.10/howto/custom-template-tags/#inclusion-tags
08:21:14 ПП
User 191376311
Всем привет
08:21:36 ПП
User 135467237
User 191376311
Всем привет
Привет
08:22:30 ПП
User 191376311
Как можно впихнуть свою страницу в django admin? Мне нужна страница, типа настроек как в data life engine
08:22:50 ПП
User 120578100
а как в DLE?
08:23:49 ПП
08:24:01 ПП
08:24:04 ПП
User 120578100
Что, да?
08:24:06 ПП
User 191376311
Секунду
08:24:28 ПП
User 120578100
Чем не устраивает стандартная?
08:25:50 ПП
User 191376311
http://demo.dle-news.ru/admin.php?mod=options&action=syscon
08:25:52 ПП
User 191376311
логин и пароль demo
08:25:59 ПП
User 240629525
а в чем проблема, обычный admin.site.register
08:27:36 ПП
User 191376311
Посмотрите
08:28:44 ПП
User 120578100
Обыкновенная сущность key|value для настроек...
08:28:51 ПП
User 120578100
@admin.register(Param)
class ParamAdmin(admin.ModelAdmin):
    list_display_links = None
    list_display = ('key', 'value')
    list_editable = ('value',)
08:29:42 ПП
User 191376311
а как передавать это на страницу?
08:30:02 ПП
User 191376311
ParamAdmin.objects.all()[0]?
08:30:30 ПП
User 129325914
first() не лучше будет?
08:30:32 ПП
User 240629525
template_context
08:30:37 ПП
User 240629525
лучше всего
08:31:04 ПП
User 240629525
context_processors
08:31:08 ПП
User 191376311
это жа
08:31:10 ПП
User 120578100
Лучше всего сделать метод для модели отдельный
08:31:10 ПП
08:32:13 ПП
User 240629525
'preferences': Setting.objects.all() в контекст процессоре
а в шаблоне preferences.my_pref
08:32:25 ПП
User 240629525
как-то так
08:32:36 ПП
User 240629525
а вообще таких готовых тьма есть
08:32:46 ПП
08:32:57 ПП
User 191376311
User 240629525
а вообще таких готовых тьма есть
можно пример?
08:33:03 ПП
User 240629525
https://github.com/praekelt/django-preferences
github.com/praekelt/django-preferences
django-preferences - Django app allowing users to set app specific preferences through the admin interface.
08:33:12 ПП
User 120578100
можно сделать доп класс типа
class SiteParams(object):
    def __init__(self):
        from .models import Param
        for param in Param.objects.all():
            setattr(self, param.key, param.value)
08:33:31 ПП
User 240629525
вот эта лучше всго 
https://pypi.python.org/pypi/django-dynamic-preferences
pypi.python.org/pypi/django-dynamic-preferences
Dynamic global and instance settings for your django project
08:36:39 ПП
User 191376311
ok, спасибо