2013-01-19 67 views
0

我有一個模型用於安排遊戲中的玩家,其中我希望計劃程序能夠跟蹤名單的大小和其他屬性。如何在Django管理員中生成用戶反饋?

我已經創建了一些自定義驗證,當名單規則被違反時(即排名太多或太少的球員),它的工作得相當好。但是我也想在名單不違反規則時提供反饋。

我一直在嘗試以各種方式插入帶有message_user的消息。我是來成功最接近的是這個:

def save_model(self, request, obj, form, change): 
    obj.save() 
    count = obj.players.count() 
    self.message_user(request,"Players scheduled: %s" % count) 

的問題是,反饋消息不會更新到「保存」或「保存並繼續編輯」的第一次點擊正確的計數。用戶必須再次單擊以獲取當前計數。

也許save_model方法不是這樣做的最好方法,但我嘗試了幾個其他的方法(queryset,change_view),但成功率更低。

任何想法?

回答

0

已解決。在obj.save()之後添加了form.save_m2m()。

def save_model(self, request, obj, form, change): 
    obj.save() 
    form.save_m2m() 
    count = obj.players.count() 
    self.message_user(request,"Players scheduled: %s" % count)