2013-07-27 29 views
1

這裏是myapp.modelDjango的文件管理器上傳自動創建模型的實例

from django.db import models 
from filer.fields.image import FilerImageField 

class Item(models.Model): 
    ... 
    image = FilerImageField() 
    ... 

我想在Django的文件管理器上傳過程的中間破解和自動創建項目的情況下,每個圖像的Django -filer收到。

django-filer沒有傳統的urls.py,我只是重寫指向自定義視圖的單個url模式。我該如何解決這個問題?

編輯:

感謝來自stefanfoulis一個提示,我終於結束了這段代碼:

from django.db import models 
from django.db.models.signals import post_save 
from django.dispatch import receiver 
from filer.fields.image import FilerImageField 
from filer.models import Image 

class Item(models.Model): 
    ... 
    image = FilerImageField() 
    ... 

    @receiver(post_save, sender=Image) 
    def filer_signal(sender, instance, created, **kwargs): 
     Item.objects.create(
      ... 
      image=instance, 
      ...).save() 
     return 

回答

1

文件中Django的文件管理器只是普通機型。 FilerImageField是引擎蓋下filer.models.Image的一個外鍵。所以你可以聽文件或圖像模型的post_save信號並在那裏創建你的實例。

信號文檔:前https://docs.djangoproject.com/en/dev/ref/signals/#post-save

+0

從未使用過的信號,但我終於想通了,謝謝!而且,非常感謝您使用了一個非常實用的功能:]我正在使用我的信號接收器更新問題,以供將來尋找線索的任何人使用。 – gwaramadze

相關問題