Полевой метод считывания модели Django / метод set

есть ли что-то как методы считывания и методы set для полей django модели?

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

Поскольку я использую python 2.5, я не могу использовать методы считывания python 2.6 / методы set.

Какая-либо справка?

21
задан pistacchio 24 May 2010 в 17:02
поделиться

1 ответ

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

Это не совсем то же самое, что и функция установки, поскольку значения будут оставаться в своем неправильном формате до тех пор, пока значение не будет сохранено. Если это приемлемый компромисс для вашей ситуации, то сигналы - самый простой способ добиться этого, не работая с ORM Django.

Изменить: В вашей ситуации стандартные свойства Python, вероятно, подходят для этого.Существует давний билет для добавления в Django надлежащей поддержки геттеров / сеттеров, но решить эту проблему непросто.

Вы можете добавить поля свойств к администратору, используя методы, описанные в этой записи блога

8
ответ дан 29 November 2019 в 20:43
поделиться
Другие вопросы по тегам:

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