2017-05-05 4 views
0

Ich habe eine Bibliothek Django geschrieben, ich möchte es aktualisieren. Aber ich brauche das zu den Leuten, die es benutzen, sagen, dass diese Funktion in der Zukunft entfernt wird, wie soll ich das sagen?Wie verwende ich RemovedInNextVersionWarning?

class ModelAdmin(admin.ModelAdmin): 
     def __init__(self, *args, **kwargs): 
      super(ModelAdmin, self).__init__(*args, **kwargs) 
      self.formfield_overrides = overrides 
      warnings.filterwarnings(
       'ignore', 
       'please use "ModelAdminJalaliMixin". example: class YourClass (admin.ModelAdmin, ModelAdminJalaliMixin):', 
       RemovedInNextVersionWarning 
     ) 
+2

'RemovedInNextVersionWarning' bedeutet es in der nächsten Version von Django entfernt wird. Sie sollten besser Ihre eigene Warnung für Ihre eigene Bibliothek erstellen. – Alasdair

+0

@Alasdair korrigieren Sie mich, wenn ich falsch liege, aber wie ich weiß, RemovedInNextVersionWarning ist nur DeprecationWarning-Klasse erweitert, um Filterfunktion von ihm innerhalb Django-Protokollierung zu erhalten. – iklinac

+1

@iklinac Ja, 'RemovedInNextVersionWarning' ist ein Alias ​​für eine Unterklasse von' DeprecationWarning'. Mein Punkt ist, dass 'RemovedInNextVersionWarning' speziell bedeutet, dass es in der nächsten Version von Django entfernt wird. Diese 'ModelAdmin'-Klasse wird in einer zukünftigen Version von @ Armans Bibliothek entfernt, nicht in der nächsten Version von Django. Daher sollte er seine eigene Unterklasse von 'DeprecationWarning' anlegen. – Alasdair

Antwort

0
from django.utils.deprecation import RemovedInNextVersionWarning 
import warnings  
warnings.warn('WarningString', RemovedInNextVersionWarning) 

warnings Python-Modul sind, ist RemovedInNextVersionWarning django Klasse erweitert auf DeprecationWarning