2017-05-05 2 views
0

J'ai écrit une bibliothèque Django, je veux la mettre à jour. Mais j'ai besoin que les gens qui l'utilisent disent que cette fonction sera supprimée dans le futur, comment dois-je dire cela?comment utiliser 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' signifie qu'il est supprimé dans la prochaine version de Django. Vous feriez mieux de créer votre propre avertissement pour votre propre bibliothèque. – Alasdair

+0

@Alasdair corrigez-moi si je me trompe mais comme je le sais, RemovedInNextVersionWarning est juste une classe DeprecationWarning étendue pour obtenir la capacité de filtrage à l'intérieur de la journalisation django. – iklinac

+1

@iklinac oui, 'RemovedInNextVersionWarning' est un alias pour une sous-classe de' DeprecationWarning'. Mon point est que 'RemovedInNextVersionWarning' signifie spécifiquement qu'il sera supprimé dans la prochaine version de Django. Cette classe 'ModelAdmin' va être supprimée dans une prochaine version de la bibliothèque de @ Arman, pas dans la prochaine version de Django. Par conséquent, il devrait créer sa propre sous-classe de 'DeprecationWarning'. – Alasdair

Répondre

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

warnings sont module python, RemovedInNextVersionWarning est classe django étendue sur DeprecationWarning