2017-12-07 2 views
0

私は私のモデルの大部分で私が継承する次のモデルフォームを持っています。私は自分のフォームを構築 django管理フォームを変更してください

class UserStamp(models.Model): 
    created_by = models.ForeignKey(settings.AUTH_USER_MODEL, blank=True, 
            related_name='%(app_label)s_%(class)s_created_by', on_delete=models.CASCADE) 
    updated_by = models.ForeignKey(settings.AUTH_USER_MODEL, blank=True, null=True, 
            related_name='%(app_label)s_%(class)s_updated_by', on_delete=models.CASCADE) 

    class Meta: 
     abstract = True 

は私が
form.instance.created_by = self.request.user 

を使用し、すべてがOKです。

しかし、彼は自分のフォームを使用しているため、管理者(スタッフが必要です)にはありません。 adminフォームを適切に動作させる最も簡単な方法は何ですか(これはそれぞれをゼロから行う必要はありません)。

答えて

1

ModelAdminクラスでsave_modelを上書きできます。

class MyModelAdmin(admin.ModelAdmin): 
    def save_model(self, request, obj, form, change): 
     obj.created_by = request.user 
     obj.save() 
関連する問題