2014-11-24 21 views
6

My models.py:>tín hiệu Django không hoạt động

class Aval(models.Model): 
    cliente = models.ForeignKey(Cliente) 
    salao = models.ForeignKey(Salao) 
    rate = models.IntegerField(choices=RATE, default=5) 
    criacao = models.DateTimeField(blank=True, null=True, auto_now=True) 
    comentario = models.TextField(max_length=400, blank=True, null=True, default=None) 
    aprovado = models.BooleanField(default=False) 

My signals.py:>

@receiver(post_save, sender=Aval) 
def new_rate(sender, instance, created, **kwargs): 
    aval = instance 

    print("Aval is saved.") 

Tôi đang thử nghiệm post_save tín hiệu cho mô hình Aval, Khi tôi lưu một số đối tượng Aval nó không in "Aval được lưu". Tôi đang làm gì sai?

+0

http://stackoverflow.com/a/22924754/ 594589 – dm03514

+0

bản sao có thể có của [Trình xử lý tín hiệu ở đâu nên sống trong một dự án django?] (Http://stackoverflow.com/questions/2719038/where-should-signal-handlers-live-in-a-django-project) – dm03514

Trả lời

7

Cố gắng bao gồm:

import signals 

để __init__.py tập tin của ứng dụng của bạn.

+3

Cảm ơn bạn wolendranh, nó hoạt động! Tại sao nó không phải trong django doc? https://docs.djangoproject.com/en/1.7/topics/signals/ – rayashi

+0

@rayashi không chắc chắn về điều đó) – wolendranh

3

Tôi không biết nếu dán là sai, nhưng trong mã mà mô hình của bạn được đặt tên Avaliacao và không Aval, Mô hình và lập luận người gửi có để phù hợp với

+0

Xin lỗi Krs bạn rigth. :( – rayashi

Các vấn đề liên quan