0

私の問題: Web ページをデプロイして設定DEBUG = Falseするとsettings.py、管理インターフェイスに移動すると、1 つのアプリのモデルの黒いエントリしか表示されません。まるで私が設定したかのようにhas_change_permission(): return False。しかし、私は何も設定しませんでしhas_X_permissionた。has_change_permission(): return True私はそれを強制するために追加しようとしましたが、成功しませんでした。

エラーは発生しません。この問題は、少なくとも apache で展開した場合にのみ発生するようです。組み込みmanage.py runserverWeb サーバーと組み合わせて問題を再現することはできません。

エラーが発生しないので、多少行き詰まっています:(

いくつかの詳細情報:

機能するものと機能しないものを編集します。

  • manage.py runserverDEBUG=True の動作
  • manage.py runserverDEBUG=False の動作
  • アパッチ DEBUG=True の作品
  • アパッチ DEBUG=False が動かない

モデルを生成するコード:

class Belegung(models.Model):
    name = models.CharField(max_length=40)
    bemerkung = models.TextField(max_length=200, blank=True)
    begin = models.DateField()
    ende = models.DateField()

    def __unicode__(self): ...

    class Meta:
        verbose_name_plural = "Belegungen"
        ordering = ['begin']


class CalendarContent(mainpage.ContentBlock):
    month = models.DateField()

    def __unicode__(self): ...
    def save(self, *args, **kwargs): ...
    def headline(self): ...
    def nexturl(self): ...
    def prevurl(self): ...
    def extract_begin_end(self, entries, day):...
    def weeks(self): ...


class BelegungAdmin(admin.ModelAdmin):
    list_display = ["name", "bemerkung", "begin", "ende"]
    list_filter = ["begin"]
admin.site.register(Belegung, BelegungAdmin)


class CalendarContentAdmin(admin.ModelAdmin):
    exclude = ('content_type',)
    pass
admin.site.register(CalendarContent, CalendarContentAdmin)

で、settings.pyアプリをインストール済みアプリに含めました。

DEBUG=Trueモードでは、すべてが期待どおりに機能します。Apache Web サーバーに展開するDEBUG=Falseと、モデルのエントリは黒になります。ただし、既に入力済みのモデルは引き続き Web ページで使用できます。

モデルは、メソッドCalendarContentがテンプレートからの追加の db-query のためのものであるほど単純に見えます...

読み取りと書き込みのためにアプリのロックを解除する必要がある場所はありますか?

アプリを読み取り専用にする理由として考えられるものは何ですか?

4

1 に答える 1

0

同じ問題を抱えている人のために。別の admin.py ファイルがないために、この問題が発生しているようです。ドキュメントによると、admin.py ファイルは必須ではありませんが、何らかの理由でこの問題が発生します。

于 2014-10-01T08:55:49.440 に答える