2014-02-18 2 views
0

장고 프로젝트가 있고 지금은 모든 것이 잘 작동합니다. 장고 관리 사이트가 있고 지금, 나는 내 모델에 새 레코드를 추가 할 때 함수가 동시에 호출되고 프로세스가 시작되기를 원합니다. 내가 어떻게 할 수 있니? 이 행동 이름은 무엇입니까? 이 작업을 수행 할 수장고 관리 방에서 메서드 호출

+0

신호를 시도하십시오. https://docs.djangoproject.com/en/1.6/topics/signals/sconnect-to-signals-sent-by-specific-senders – arocks

답변

0
  • 1 WAY

당신은 장고를 사용하여 응용 프로그램으로 models.py에 갈 수는 신호. 당신이 장고 관리자를 사용하여 테이블에 데이터를 작성하는 경우

 
from django.db.models.signals import post_save 

class Test(models.Model): 
    # ... fields here 

# method for updating 
def update_on_test(sender, instance, **kwargs): 
    # custome operation as you want to perform 

# register the signal 
post_save.connect(update_on_test, sender=Test) 
  • 2 WAY

당신은) (저장 modeladmin 클래스의 방법을 ovveride 수 있습니다.

 
class TestAdmin(admin.ModelAdmin): 
    fields = ['title', 'body' ] 
    form = TestForm 

    def save_model(self, request, obj, form, change): 
     # your login if you want to perform some comutation on save 
     # it will help you if you need request into your work 
     obj.save()