8

既存のdjango1.3をdjango1.5に移行しました。すべてが大丈夫のようです。しかし、私がネギをするとき、私はローカルフレーバーのために非推奨の警告がありますpython manage.py runserver

... \ env \ lib \ site-packages \ django \ contrib \ localflavor__init __。py:2:非推奨警告:django.contrib.localflavorは非推奨です。代わりに、個別のdjango-localflavor-*パッケージを使用してください。
warnings.warn("django.contrib.localflavorは非推奨です。代わりに別のdjango-localflavor- *パッケージを使用してください。"、DeprecationWarning)

django 1.5のリリースノートを読みましたが、このアプリは非推奨になっていることを理解しています。私の問題は、プロジェクトでlocalflavorアプリを使用していないことです。

別のアプリが何らかの形でそれをロードしていると思いますが(localeurlまたはmodeltranslation?)、この警告を修正する方法はありません。

  • この警告が表示される理由を知る方法は?
  • きれいな方法でそれを修正する方法は?
4

3 に答える 3

6

これは django 1.5 のバグです。Django 自体が警告をトリガーしています。

犯人はdjango/contrib/gis/utils/layermapping.py#L19です

これは、django master で修正されています (localflavor を完全に削除することにより)。

ロギング構成に無視を追加することで、警告を黙らせることができます。

import warnings
warnings.filterwarnings('ignore', r"django.contrib.localflavor is deprecated")
于 2013-03-08T01:16:07.330 に答える
6

アップデート:

Django には単一の localflavors パッケージが含まれるようになりました: https://pypi.python.org/pypi/django-localflavor

ここにドキュメントがあります:http://django-localflavor.readthedocs.org/en/latest/

残りの応答を許可しますが、現在は廃止されています。

使用するすべてのローカル フレーバー ( https://github.com/django/ ) をダウンロードする必要があります。現在、pypi にあるのは 3 つだけです。

その後、新しい

from django_localflavor_XX import forms as XX_forms

(xx はお気に入りの国コード)

多くの (外国語での) コミットが django で行われ、リリース サイクルが少し長かったため、彼らはこれらすべてのライブラリを脇に置くことを選択しました。

Django には、ネイティブ メキシコの社会保障番号検証ウィジェットがありました。

ですから、これは良い動きですが、これらすべてのパッケージを使用できるようにするには、できるだけ早くローカル コミュニティによって管理される必要があります。

これは、インポートが完了するとトリガーされます。インポートのスタック トレースをログに記録したり、それを使用する django アプリに依存しているかどうかを調べたりすることができます。

django ソースを開き、contrib.localflavor__init__.pyファイルに移動します。スタックトレースを出力して、不適切なインポートがどこにあるかを確認します。

http://docs.python.org/2/library/traceback.html

それが役に立てば幸い

于 2013-03-07T17:30:56.613 に答える
2

同じ問題を扱っただけです。新しいパッケージをインストールしました (US パッケージの例):

pip インストールhttps://github.com/django/django-localflavor-us/zipball/master

次に、古いコードをコメントアウトして、新しいパッケージに変更しました。

# from django.contrib.localflavor.us.us_states import STATE_CHOICES  <= old
from django_localflavor_us.us_states import STATE_CHOICES
# from django.contrib.localflavor.us.models import USStateField  <= old
from django_localflavor_us.models import USStateField

問題を修正したようです。他の言語パッケージは、https ://github.com/django にリストされています。

于 2013-03-10T00:04:51.200 に答える