я модель Django сказать:Как добавить новый метод в класс Django из других модулей?
class MyOperation(models.Model):
name = models.CharField(max_length=100)
def my_method(self):
pass
Я хочу, чтобы иметь возможность добавлять, из другого приложения Django, новый метод этого класса.
Я пытался сделать это с другой модуль приложения под названием custom.py:
from operations.models import MyOperation
def op_custom(test):
print "testing custom methods"
MyOperation.op_custom = op_custom
Однако это не похоже на работу, во время выполнения метода не существует.
Это способ изменить определение класса из другого приложения django? Есть ли лучший способ сделать это?
Благодаря
1. Не делайте этого. 2. Никогда не делайте этого. 3. Это нарушает самоанализ и беспорядок с человеческим разбором кода python, поэтому его не следует делать. 4. Не делайте этого. 5. Если вам абсолютно необходимо это сделать, вы можете, как показано ссылкой @ knbk. – astex
Это не тот же вопрос, я спрашиваю, как добавить метод в Django Model, я имею в виду класс, а не объект. –
@JoseLuisdelaRosa Это именно то, на что ссылается ссылка, если я не понимаю, что вы на самом деле спрашиваете. Один вопрос: действительно ли вы используете код в 'custom.py'? – knbk