есть ли что-то как методы считывания и методы set для полей django модели?
Например, у меня есть текстовое поле, в котором я должен сделать, строковая замена перед ним быть сохраненными (в панели администрации, и для вставляют и обновляют операции), и делают другого, другая замена каждый раз, когда это читается. Они представляют замену в виде строки, являются динамичными и должен быть сделан во время сохранения и чтения.
Поскольку я использую python 2.5, я не могу использовать методы считывания python 2.6 / методы set.
Какая-либо справка?
Вы можете добавить обработчик сигнала pre_save
к модели, которую вы хотите сохранить, который обновляет значения перед их сохранением в базе данных.
Это не совсем то же самое, что и функция установки, поскольку значения будут оставаться в своем неправильном формате до тех пор, пока значение не будет сохранено. Если это приемлемый компромисс для вашей ситуации, то сигналы - самый простой способ добиться этого, не работая с ORM Django.
Изменить: В вашей ситуации стандартные свойства Python, вероятно, подходят для этого.Существует давний билет для добавления в Django надлежащей поддержки геттеров / сеттеров, но решить эту проблему непросто.
Вы можете добавить поля свойств к администратору, используя методы, описанные в этой записи блога