170 похожих чатов

Добрый день, прошу совета по "допиливанию" админки, вопрос скорее "хорошего

тона"...
Есть масса моделей, News - просто пример для иллюстрации, для каждой прописан ModelAdmin (https://pastebin.com/UjAgmQN7) В пасте - только то, что касается вопроса, вроде, все лишнее убрал...
Изначально прописал наборы полей в свойствах класса (list_display, list_filter, list_editable)
Появилась необходимость разделить наборы полей для обычных пользователей и superuser.
Начал прописывать методы get_list_filter и прочие. Для большинства свойств есть аналогичные методы:
list_display - get_list_display и т.д. А вот для list_editable, как я понял, нет...
В результате наткнулся на то, что при указании поля в свойстве list_editable ругается на то, что поле отсутствует в list_display (его я перенес в метод)...
В итоге прописал list_display и в свойстве и в методе. То есть, то, что для всех, прописано в свойстве, а метод только изменяет его.
Вопрос - как правильнее поступать в таких случаях - переносить всю логику в метод или писать и свойство и метод?

43 ответов

93 просмотра

Это как-то не проще через обычные группы и пермишены сделать?

Ахаха, ну вот же ответ нашего супер сеньора))

Ахах вот ответ нашего ребенка с бородой, по существу есть что или кекнул опять а убрать некому

Кекнул? Ты настолько отстал от жизни что даже не понимаешь слов которые используешь? Уймись ты выглядишь не умно и нарываешься на бан.

То есть решения у тебя опять нет, но ты с обосраной жопой пытаешься что-то доказать, бородатое чмо 🤣🤣🤣

Нахуй или

О, у тебя уже настолько разгорелось. Но мы все еще все считаем что ты недалекий школьник, а не серьезный программист. Может быть еще больше матов докажут нам обратное?

Бородатому чму так и нечего сказать, только обиженно скулить в углу

Ты вообще что за лошок

Слушай, ну зачем ты в оскорбления скатился? Интересная ж тема, с удовольствием ваши рассуждения читал...

Ты воднянку на места перегрева не пробовал устанавливать? Ну или охлаждение азотом?

ну резковатос, но кмк яростный аутор прав. изначально про рт разговор зашел, зависит от рук инженегра (далее уже экономическое обоснование). Питон разгоняли и разгоняют и gil обходят и асинхронность давно уже.

Дык я ж не спорю. Просто как-то перебор с оскорблениями, указал лишь на это

Как вариант, можно создать прокси модель, в админке указать ей необходимые поля и т.д., а доступ (для админки стандартной модели и для админки прокси модели) выдавать стандартными средствами джанги

Почему ты не хочешь создать различные отображения для стаффа и супер юзеров?

если 2 роли не динамические можно просто 2 админки сделать, под них подкидывать свои model view

до скоростей сравнимых с Go?

Sergey-Svobodsky Автор вопроса

Что в данном контексте "отображения"? Вьюхи? Так я вообще стандартную админку настраиваю...

Например гет форм по юзеру переопределить

Sergey-Svobodsky Автор вопроса

Хмм... А я решаю НЕ через стандартные средства? Вроде, https://docs.djangoproject.com/en/3.1/ref/contrib/admin/

Sergey-Svobodsky Автор вопроса

Так... Это касается списка в админке.

Ну ты ведь отображаешь форму изменения объекта, или что?

список, ему просто отфильтровать список объектов по автору/роли нужно, можно например менеджер кастомный написать и подсовывать его в админке, но скорее всего есть элегантней решение.

чтобы чего то сравнивать надо четкие задачи иметь на руках. я в контексте разумности привык тащить кирки и лопаты.

А, фильтры переписать? Из реквест параметров тогда просто берешь значение и по нему фильтруешь

да, скорее всего

Sergey-Svobodsky Автор вопроса

Зачем его ПЕРЕПИСЫВАТЬ, если стандартного достаточно, просто у пользователей он НЕ НУЖЕН?

Вот пример того о чем я говорю, надеюсь станет понятнее :) а уже на сами MainModelAdmin и MainModelProxyAdmin права раздаешь стандартными средствами джанги

Sergey-Svobodsky Автор вопроса

Спасибо, сейчас посмотрю.

задача - реализовать функционал чата

у тебя там в MainModelAdmin ошибка

Да, скобка лишняя :) Но сути не меняет

Sergey-Svobodsky Автор вопроса

Посмотрел. Спасибо, на одной модели попробую - посмотрю, как будет удобнее в поддержке, но, похоже, ваш вариант сильно гибче.

без разницы для стандартно никому не нужного. далее по обстоятельствам. и просадки с большой вероятностью будут не по языкА vs язык Б, по хранению валидации те в бд .

ну у меня есть информация от авторитетных для меня специалистов, что разница есть и большая.

твоя?

ну у всех свои авторитеты ) я не адепт инструментов. если разумно узкие места переписать надо переписать, питон дешевле проще пока (субъективно)

нет, это началось с дамы с который вы не договорились)

просто мнение человека который сталкивается с этим на практике регулярно и является спецом по питону дословно "Писать это на питоне не имеет смысла."

Даже на старлетте?

когда спрашивали мнения разработка шла на фастапи

ну мы мессенджер делали дословно - там проблемы не в языке, а как сохранить очередность сообщений и как быстро сохранить и держать актуальные данные, даже самый тормозной приемник можно проксировать.

Некрасиво общаешься

Похожие вопросы

Обсуждают сегодня

30500 за редактор? )
Владимир
47
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
вы делали что-то подобное и как? может есть либы готовые? увидел картинку нокода, где всё линиями соединено и стало интересно попробовать то же в ddl на lua сделать. решил с ч...
Victor
8
Подскажите пожалуйста, как в CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); получить наз...
A Z
7
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
1
Он в одиночку это дело запилил или была какая-то команда?
Aquinary
12
~ 2m21s  nix shell github:nixos/nixpkgs#stack ~  stack ghc -- --version error: … while calling the 'derivationStrict' builtin at /builtin/derivation.nix:...
Rebuild your mind.
6
Всем привет, нужна как никогда, нужна помощь с IO в загрузчике. Пишу в code16 после установки сегментных регистров, пишу вывод символа. Пробовал 2 варианта: # 1 mov $0x0E, %a...
Shadow Akira
14
Карта сайта