Size: a a a

Django [ru] #STAY HOME

2020 September 16

MS

Maxim Stikharev in Django [ru] #STAY HOME
Mikhail
Привет! Ребята, нужна помощь. Есть база postgresql, в ней можно создавать ползовательские типы полей. А как в модели django создать кастомное поле которое будет выполнять что-то вроде 'CREATE TYPE custom_type AS (some_data VARCHAR(25), other_data VARCHAR(25))'.  Чтобы его можно было использовать на равне с делотными типами полей? Пока проблема решена так: я руками сделал напрямую в базе этот запрос, создал класс модели customField(models.Field) и переопределил db_type (return 'custom_type') - это позволило модели создавать таблицу с моим кастомным типом поля. Но как же джангу заставить саму создать новый тип поля в базе? Читал тут: https://docs.djangoproject.com/en/3.1/howto/custom-model-fields/ , не помогло.
Написать кастомную миграцию которая создаёт тип поля
источник

МП

Михаил Павлов... in Django [ru] #STAY HOME
Mikhail
Привет! Ребята, нужна помощь. Есть база postgresql, в ней можно создавать ползовательские типы полей. А как в модели django создать кастомное поле которое будет выполнять что-то вроде 'CREATE TYPE custom_type AS (some_data VARCHAR(25), other_data VARCHAR(25))'.  Чтобы его можно было использовать на равне с делотными типами полей? Пока проблема решена так: я руками сделал напрямую в базе этот запрос, создал класс модели customField(models.Field) и переопределил db_type (return 'custom_type') - это позволило модели создавать таблицу с моим кастомным типом поля. Но как же джангу заставить саму создать новый тип поля в базе? Читал тут: https://docs.djangoproject.com/en/3.1/howto/custom-model-fields/ , не помогло.
Интересно, какой тип данных будете хранить?
источник

V

Valera in Django [ru] #STAY HOME
Всем привет!
У меня есть сериализатор:
class MySerializer(ModelSerializer):
   deep_links = MyDeepLinkSerializer(many=True, read_only=True)

Все работает, но мне нужно изменить queryset для deep_links. Сейчас выдаются вообще все объекты, которые есть, но мне нужно определенные.
Как изменить queryset?
источник

M

Mikhail in Django [ru] #STAY HOME
Михаил Павлов
Интересно, какой тип данных будете хранить?
ну тут не  важно какой тип. пытаюсь разобраться просто. В доке написано очень сухо, я лично не совсем понял, изучение существующих типов тоже мне ничего не дало, я новичек. в общем нашел статейку интересную на эту тему, сейчас читаю https://schinckel.net/2014/09/24/using-postgres-composite-types-in-django/
источник

МП

Михаил Павлов... in Django [ru] #STAY HOME
Mikhail
ну тут не  важно какой тип. пытаюсь разобраться просто. В доке написано очень сухо, я лично не совсем понял, изучение существующих типов тоже мне ничего не дало, я новичек. в общем нашел статейку интересную на эту тему, сейчас читаю https://schinckel.net/2014/09/24/using-postgres-composite-types-in-django/
Если нет важности том какой тип. То чем не подходит обычный CharField?
источник

МП

Михаил Павлов... in Django [ru] #STAY HOME
Очень вероятно что ваша задача решается стандартными средствами
источник

M

Mikhail in Django [ru] #STAY HOME
Михаил Павлов
Если нет важности том какой тип. То чем не подходит обычный CharField?
Это задание, не решение реальной бизнес задачи. Безусловно в реальном проекте создание собственных типов полей в большинстве случаем не имеет смысла и вносит путаницу, на мой дилетантский взгляд по крайней мере.
источник

Y

Yaroslav in Django [ru] #STAY HOME
Во все статтях про метод super( ), приводят пример его свойства вызвать, родительский метод init.

Может ли super ( ) вызвать другие методы родительского класса?
источник

МП

Михаил Павлов... in Django [ru] #STAY HOME
Mikhail
Это задание, не решение реальной бизнес задачи. Безусловно в реальном проекте создание собственных типов полей в большинстве случаем не имеет смысла и вносит путаницу, на мой дилетантский взгляд по крайней мере.
Если это задание то задание не для новичка и точно не для дилетанта
источник

A

Andrey in Django [ru] #STAY HOME
Yaroslav
Во все статтях про метод super( ), приводят пример его свойства вызвать, родительский метод init.

Может ли super ( ) вызвать другие методы родительского класса?
Да, безусловно
источник

Н

Не выходи из комнаты... in Django [ru] #STAY HOME
Yaroslav
Во все статтях про метод super( ), приводят пример его свойства вызвать, родительский метод init.

Может ли super ( ) вызвать другие методы родительского класса?
Да
источник

ЯК

Ярослав Коробейников... in Django [ru] #STAY HOME
Как можно избежать при миграции создания базовы джанговых таблиц?
источник

A

Andrey in Django [ru] #STAY HOME
Ярослав Коробейников
Как можно избежать при миграции создания базовы джанговых таблиц?
удалить приложения из installed_apps наверн
источник

A

Andrey in Django [ru] #STAY HOME
только тогда даже сессии использовать не получится
источник

ЯК

Ярослав Коробейников... in Django [ru] #STAY HOME
Andrey
только тогда даже сессии использовать не получится
Это и не нужно, приложение с мультибд, есть основная где всё уже есть, и вот надо нормально подсосать ещё одну дб, но без всего вот этого вот говна в таблице, таблицы из левой бд будут практически только для чтения использоваться
источник

b

bbclub in Django [ru] #STAY HOME
Ярослав Коробейников
Это и не нужно, приложение с мультибд, есть основная где всё уже есть, и вот надо нормально подсосать ещё одну дб, но без всего вот этого вот говна в таблице, таблицы из левой бд будут практически только для чтения использоваться
если с самих файлов миграций их удалять?
источник

ЯК

Ярослав Коробейников... in Django [ru] #STAY HOME
Короче
CONSTANCE_DBS = ['default']

Вот такая настройка в settings поомгла
источник

ЯК

Ярослав Коробейников... in Django [ru] #STAY HOME
Всякое дефолтное джанговское создаётся только в default бд, в остальных чтобы не генерировал
В остальных бд создаются только django_migrations таблицы и те что указаны для этой дб
источник

D

Dk in Django [ru] #STAY HOME
Привет
источник

N

Nire in Django [ru] #STAY HOME
Непривет
источник