2016-10-31 4 views
1

は、私が唯一のショーを作成するにはどうすればよい値がある場合、条件付きでdjango adminのフィールドを表示するには? NON空白の場合admin.pyファイルに

fields = ('name', 'description', ('created_by','created',),('updated_by', 'updated')) 

、CREATED_BYを持っています。 新しいレコードを作成しようとすると、created_by、created、updated_by、updatedが空白になり、表示する必要はありません。

私はレコードを保存するときだけ、これらのフィールドをdjango adminに表示したいと思います。

答えて

2

get_fieldsメソッドを使用してフィールドを動的に設定してみてください。このように:

class MyAdmin(ModelAdmin): 
    def get_fields(self, request, obj=None): 
     if obj is None: 
      return ('name', 'description') 
     return ('name', 'description', ('created_by','created',),('updated_by', 'updated')) 

https://docs.djangoproject.com/en/1.10/ref/contrib/admin/#django.contrib.admin.ModelAdmin.get_fields

+0

私はあなたが提供する上記のコードに自己を追加する必要がありました。 def get_fields(self、request、obj = None)、それ以外の場合はエラーが発生します。しかし、素晴らしい答え。問題を解決しました。 – Stryker

+0

ありがとう、コードを更新しました –

関連する問題