2011-07-05 5 views
3

特定のモデルの追加/変更を無効にしようとしていますが、管理オブジェクトのadd_viewメソッドをオーバーライドしています。そうすることで、ユーザーにメッセージを追加してリダイレクトしたいと考えています。これを以下の後djangoメッセージにタグがないのはなぜですか?

messages.add_message(
     request, 
     messages.ERROR, 
     "Please use the other interface.", 
     ) 

:私はメッセージをこのように追加しているかのように、

http://readthedocs.org/docs/django/en/latest/ref/contrib/messages.html

そして、それは動作しますが、それはその横に小さな緑のチェックマークで現れること成功しました。テンプレートをチェックし、message.tagsにクラスがあればそれを追加します(警告やエラーがある場合はチェックマーク以外のアイコンが表示されます)。しかし、上記のリンク(または私が見つけた他の方法)のようにメッセージを作成すると、メッセージオブジェクトにタグが表示されません。

何が間違っている可能性がありますか?

答えて

-1

は、これは私のDjangoのadmin base.cssにあるものである:それのクラスやタグにもかかわらず、意味

ul.messagelist li { 
    font-size: 12px; 
    display: block; 
    padding: 4px 5px 4px 25px; 
    margin: 0 0 3px 0; 
    border-bottom: 1px solid #ddd; 
    color: #666; 
    background: #ffc url(../img/admin/icon_success.gif) 5px .3em no-repeat; 
} 

が、それはアイコンを取得します。 messagelistのメッセージ<li>である必要があります。

1

昨日私はまったく同じことに遭遇した経験がありました。それを解決して、それが信じられているかどうかは、ウェブサービスを再開していた。私は./manage.py runserverとローカルで働いていたので、あなたのシナリオであるかどうかはわかりません。

ちなみに、私は他の奇妙なジャンゴの奇妙さを発見しました。特に、多くの新しいコードを作成したときに、これを解決しました。

+0

は完全にページをリロードすることは、あまりにも、助けることができます。ブラウザが古いスタイルシートを保持していたので、私はちょっと変わった動作を見ました。 –

+0

それで、私は常にスタイルシートにパラメータとしてタイムスタンプを適用するので、私はいつも新しいものを取得します。 –

1

は、だけ壊れたメッセージタグを持つ認証されたユーザー、およびおそらく他の問題のため、settings.pyで、MIDDLEWARE_CLASSESリストは、そうでない場合は、作業のDjangoのメッセージの並べ替えを

'django.contrib.messages.middleware.MessageMiddleware', 

が含まれていることを確認してください。

(私はちょうど同じ問題に遭遇し、それを固定、その行を追加すること。)

関連する問題