Джанго: Есть ли способ добавить метод экземпляра модели к администратору? - PullRequest
0 голосов
/ 24 января 2010

Я хочу добавить метод, который моя модель Ticket назвала процессом, для администратора, чтобы я мог щелкнуть ссылку в представлении списка и «обработать» экземпляр моей модели (выполнить вызов API за кулисами) .

Для уточнения:

class Ticket(models.Model):
    title = models.CharField(max_length=255)

    def process(self):
        ... hardcore processing action ...

Мне нужно добавить метод process() непосредственно администратору без использования отдельной функции.

Ответы [ 2 ]

4 голосов
/ 24 января 2010

Вам просто нужно предоставить небольшой метод в вашем классе ModelAdmin, который возвращает ссылку, указывающую на представление, вызывающее метод вашей модели, и добавить имя этого метода в кортеж list_display modeladmin. Вам, очевидно, также необходимо определить само это представление и URL-адрес, указывающий на него.

2 голосов
/ 24 января 2010

Да, это возможно; Проверьте эту документацию, только то, что вам нужно:

http://docs.djangoproject.com/en/1.1/ref/contrib/admin/actions/#ref-contrib-admin-actions

...