@pydjango

Страница 560 из 1273
BlastPy
14.09.2017
18:04:51
products_price = models.IntegerField(verbose_name='Цена', blank=True, null=True)

при миграции пишет что already_exist, с —fake-initial просто не добавляет колонку

или смотрите в сторону фикстур

Ну или https://djbook.ru/rel1.7/topics/migrations.html#data-migrations

Google
BlastPy
14.09.2017
18:05:42
``` ````

# -*- coding: utf-8 -*- from django.db import models, migrations def combine_names(apps, schema_editor): # We can't import the Person model directly as it may be a newer # version than this migration expects. We use the historical version. Person = apps.get_model("yourappname", "Person") for person in Person.objects.all(): person.name = "%s %s" % (person.first_name, person.last_name) person.save() class Migration(migrations.Migration): dependencies = [ ('yourappname', '0001_initial'), ] operations = [ migrations.RunPython(combine_names), ]

только свою функц напиште где в поле будет писать нужное вам значение

да
что имеете в виду на одной странице ? При редактировании записи сделать по полю линк на другой обьект в другой модели ?

Артём
14.09.2017
18:11:44
Привет! В моём проекте приложение создаётся запрос в вебморде пользователем а потом этот запрос должен выполняться в фоне (грубо говоря по крону). Пока думаю что через python-crontab это делать. Подскажите пожалуйста чем реализуется, или какой-нибудь бестпрактикс

Артём
14.09.2017
18:13:07
celery
Благодарю

BlastPy
14.09.2017
18:15:24
Благодарю
http://docs.celeryproject.org/en/latest/django/first-steps-with-django.html

Артём
14.09.2017
18:24:46
http://docs.celeryproject.org/en/latest/django/first-steps-with-django.html
Благодарю! Мне где-то попадалось что лучше подключать redis или RabbitMQ Не ожидаю большого кол-ва фоновых задач, может тогда использовать текущую СУБД (Postgresql) ?

Артём
14.09.2017
18:35:31
Тогда используйте Golang =)
Чем postgres плох? С Golang я не знаком и в рамках изучения Django совсем не хочется ещё и с новым для себя связываться Golang. Или есть определённые недостатки postgres в данном ключе ?

Владимир
14.09.2017
18:48:23
помогите составить запрос: class Something(models.Model): a = DateField() b = DateField() нужен запрос "получить все Something где a + b <= datetime.now()"

Google
Артём
14.09.2017
19:00:43
Не не, )) я не говорил что будет большое кол-во фоновых задач

Владимир
14.09.2017
19:00:54
типо поточное время болье тех что в поле или наоборот ?
поточное время больше чем сумма времени в полях а и б

Артём
14.09.2017
19:00:55
наоборот, небольшое

Nikita
14.09.2017
19:01:17
Используй celery и redis в качестве брокера

BlastPy
14.09.2017
19:02:23
Nikita
14.09.2017
19:02:44
Результаты работы задач, если они вообще нужны, можно хранить в бд, что бы к ним иметь доступ из админки

Владимир
14.09.2017
19:03:02
смотрите в сторону unix time stamp
мне нужно построить запрос в orm, а я не могу понять как в одном запросе сложить два поля из этого самого запроса..

Артём
14.09.2017
19:03:30
Используй celery и redis в качестве брокера
Благодарю, мне напомнило как в одом проекте у нас в одной СУБД лежали и очереди и основная БД. Давало немалую нагрузку

BlastPy
14.09.2017
19:03:39
думаю надо будет писать кастом метод в модели

Nikita
14.09.2017
19:04:46
Вроде если надо поля складывать это может пригодиться

BlastPy
14.09.2017
19:05:43
Или https://docs.djangoproject.com/en/1.11/topics/db/queries/#complex-lookups-with-q-objects

Я только не понимаю зачем там сумма дат ?

там ведь пзцд дата получ.

BlastPy
14.09.2017
19:06:49
что то походу у вас архитектура хромает

Владимир
14.09.2017
19:07:59
BlastPy
14.09.2017
19:08:14
а ну так то да

Google
BlastPy
14.09.2017
19:08:28
но duration уже не DateField()

может end_date ?

а вот duration уже а - б

Артём
14.09.2017
19:09:07
Можно в settings прописать celery_ignore_result=True, если результаты не важны
В итоге должен получиться .xlsx файл с заполнеными полями.

Владимир
14.09.2017
19:09:32
но duration уже не DateField()
мой косяк, там DurationField

BlastPy
14.09.2017
19:11:30
мой косяк, там DurationField
наверно все таки нужно будет конвертировать поля в Unix time stamp а там уже фильровать те что проходят проверку

Nikita
14.09.2017
19:11:36
Благодарю, мне напомнило как в одом проекте у нас в одной СУБД лежали и очереди и основная БД. Давало немалую нагрузку
https://khashtamov.com/ru/celery-best-practices/ Надо отнестись серьезно к рекомендациям, особенно по времени выполнения задач и разделении на очереди

Владимир
14.09.2017
19:13:14
наверно все таки нужно будет конвертировать поля в Unix time stamp а там уже фильровать те что проходят проверку
с ковертацией никаких проблем, как блин это все пишется в Query.filter(...)? ну нельзя там сделать что-то вроде: Query.filter(F()+F()<=datetime.now())

Kirill
14.09.2017
19:14:05
Делаешь annotate и потом это поле используешь в filter

BlastPy
14.09.2017
19:14:06
пробуйте

Артём
14.09.2017
19:29:56
https://khashtamov.com/ru/celery-best-practices/ Надо отнестись серьезно к рекомендациям, особенно по времени выполнения задач и разделении на очереди
Да, одно из первых что мне попалось. Только наверное мне очереди не подойдут... У меня отчеты будут формироваться в фоне, некоторые по 6 часов формируются. Это же не получится в celery сделать? суть приложения: - пользователь в вебе формирует то что он хочет получить, своего рода отчёт. - отчёты, около двух сотен, формируются ночью, время формирования отчёта от нескольких минут, до шести часов - по окончанию формирования отчёта, отчёт отправляется адресату

Nikita
14.09.2017
19:39:31
6 часов это много, получается один воркер полностью будет занят одним отчетом на протяжении всего этого времени, тут нужно думать над конфигурацией (количество потоков и воркеров)

Артём
14.09.2017
19:54:56
есть сервис сторонний хочу прикрутить своё приложение по формированию что бы группа аоддержки могла формировать отчёты для рользователей отчёты генерятся по годовалым или месячным данным (долго) сейчас эти отчёты генерятся в кроне скриптами, мне это надоедает

Что за отчеты?
может это и есть старая работа ))

serbernar
14.09.2017
19:55:21
Не долго

Нет, врядли, я пришел, оптимизировал, переписали с нуля

Там все сейчас как часы

Google
Артём
14.09.2017
19:55:58
Тогда да, не та работа

Артём
14.09.2017
20:00:47
Если тебе нужны срезы с датой, то тебе нужен просто уже сгенеренный дименшен дат
Там немалый sql запрос, и нельзя сказать что они все одинаковые т.е. нельзя их под шаблон загнать

serbernar
14.09.2017
20:01:13
Можно :)

Плюс ты не работаешь с скл(запросами), ты на уровень абстракции выше и по апи режешь нужный тебе куб

Там все отлично работает

Артём
14.09.2017
20:03:21
красиво говоришь )) но как будут пользователи эти отчёты формировать в вебе? Которые не имеют дел с ооп ?

serbernar
14.09.2017
20:03:38
Там вебморда на ангуляре

Кастомизируешь ангуляр, натягиваешь верстальщика, чтобы тот сверстал красиво, фронт натягивает макет

Ну и подпиливаешь бек на фласке под себя, мб логику какую то допишешь. Мы, например, писали под клиентов spss форматтер, лоадер и выгрузку

Решение недорогое

Артём
14.09.2017
20:06:19
Кинь ссылку какую-нить, а то пытаюсь найти по твоим ключевым словам, но пока не выходит найти (

serbernar
14.09.2017
20:06:37
полгода, сеньйор, 2 мидла, 2 джуна, два фронта и маркап на месяц

Щас

Артём
14.09.2017
20:07:10
полгода, сеньйор, 2 мидла, 2 джуна, два фронта и маркап на месяц
это ты о времени реализации и стоимости ? ))

serbernar
14.09.2017
20:07:10
http://cubes.databrewery.org

Я сказал и то, и другое

Артём
14.09.2017
20:07:33
понял

serbernar
14.09.2017
20:07:45
Тут ты можешь даже примерно посчитать себестоимость проекта и решения

Google
Артём
14.09.2017
20:08:46
только ... есть один админ (я) и усё ))) просто надоело ковырять скрипты, проект растёт кол-во тоже сейчас скриптов около 200

serbernar
14.09.2017
20:09:02
Лол

Артём
14.09.2017
20:09:13
ага ))

serbernar
14.09.2017
20:09:22
Ну, удачи с реализацией

Артём
14.09.2017
20:09:49
т.е. нет не синьоров ничего ))) даже денег не дадут за это

есть явапрограммеры ))) Но они нагружены

serbernar
14.09.2017
20:10:46
У нас было около 15 проектов, по 50к анкет в день, по 50к запросов к коучу. Мед сфера, да

Артём
14.09.2017
20:11:04
Это похожая сфера

serbernar
14.09.2017
20:11:04
Ява там не нужна

Украина?

Артём
14.09.2017
20:11:30
Россия

serbernar
14.09.2017
20:11:46
Хм, не знаю тогда

Артём
14.09.2017
20:12:40
рук-во определят на чём пишут.... А в компании исторически сложилось что в основном это ява

так если подитожить эту переписку исходя из ресурсов, что поссоветуешь?

serbernar
14.09.2017
20:15:01
Олап в любом случае - твоя нужда, кубс - ну на прототип хватит 2 дня, развернуть все

Если нет, то придется писать свои костыли

Артём
14.09.2017
20:16:28
Благодарю, посмотрю на кубы если костыли, то вижу вебморда + кронтаб

serbernar
14.09.2017
20:17:29
а где оно лежит? данные, которые ты кладешь в отчет

Артём
14.09.2017
20:17:55
postgres

serbernar
14.09.2017
20:25:38
Тогда остается их только нормализировать, поставить индексы и радуйся

Страница 560 из 1273