2016-03-21 8 views
0

すぐに削除したくない場合は、Django 1.4モデルで非推奨フィールドをマークする最良の方法は何ですか?Django 1.4で非推奨フィールドをマークするには?

+0

あなたは推奨されないそれらをマークすることによって達成するために、正確に何をしたいですか?誰がこの情報を受け取りますか? –

+0

他の開発者の場合、@ LudwikTrammer。彼らは機能でそれらを使用すべきではありません! –

+0

システムチェックフレームワークを調べましたか:https://docs.djangoproject.com/en/1.9/topics/checks/#field-model-and-manager-checks? – karthikr

答えて

2

申し訳ありませんが、私はまだコメントできません。

何か気にかけたくなければ、単にPythonのバージョンを比較して警告を発することができます。

import django 
print django.VERSION 
>> (1, 8, 5, 'final', 0) 
if django.VERSION[1] < 4: 
    print "[DEPRECATION WARNING]" 

また、人気のあるパッケージに行ってどのように動作するかを確認することもできます。例えば、DjangoのCMSで:

cms/exceptions.pyhttps://github.com/divio/django-cms/blob/develop/cms/exceptions.py

# -*- coding: utf-8 -*- 

class Deprecated(Exception): pass 

cms/utils/check.pyhttps://github.com/divio/django-cms/blob/develop/cms/utils/check.py

@define_check 
def check_deprecated_settings(output): 
    with output.section("Deprecated settings") as section: 
     found = False 
     for deprecated in ['CMS_FLAT_URLS', 'CMS_MODERATOR']: 
      if hasattr(settings, deprecated): 
       section.warn("Deprecated setting %s found. This setting is no longer in use and can be removed" % deprecated) 
       found = True 
     if not found: 
      section.skip("No deprecated settings found")