signal
(プロキシ モデルの) インスタンスが 3 番目のアプリによって暗黙的に作成されたときに、なぜ my が機能しないのかわかりません。
プロジェクトでサードパーティのアプリを使用Django-Quiz
しています。というモデルがありSitting
ます。管理者にテーブルを表示したいので、proxy
モデルを作成して、のメソッドQuizSittingProxy
を設定できるようにする必要がありました。__str__
__unicode__
Sitting
User
クイズを受けるたびに、新しいSitting
オブジェクトが作成されます。それぞれQuizSittingProxy
オブジェクトも作成されます。
class QuizSittingProxy(Sitting):
"""
Holds information about taken Language Tests (in admin)
"""
class Meta:
proxy = True
def __str__(self):
return '{}: {}, score: {}'.format(self.user.username, self.quiz.title, self.current_score)
クイズの結果を現在に割り当てたいUser
ので、signal
.
問題は、管理者でオブジェクトを手動でsignal
作成した場合にのみ機能することです。QuizSittingProxy
User
クイズに答えるたびに作成されると言う価値があります。
@receiver(post_save,sender=QuizSittingProxy)
def assign_level(sender, instance, created, **kwargs):
print 'QUIZSITTING POST SAVE'
# user = instance.user
# quiz = instance.quiz
# score = len(instance.user_answers.keys()) / instance.current_score
どこに問題があるか知っていますか?