私の問題: Web ページをデプロイして設定DEBUG = False
するとsettings.py
、管理インターフェイスに移動すると、1 つのアプリのモデルの黒いエントリしか表示されません。まるで私が設定したかのようにhas_change_permission(): return False
。しかし、私は何も設定しませんでしhas_X_permission
た。has_change_permission(): return True
私はそれを強制するために追加しようとしましたが、成功しませんでした。
エラーは発生しません。この問題は、少なくとも apache で展開した場合にのみ発生するようです。組み込みmanage.py runserver
Web サーバーと組み合わせて問題を再現することはできません。
エラーが発生しないので、多少行き詰まっています:(
いくつかの詳細情報:
機能するものと機能しないものを編集します。
- manage.py runserver
DEBUG=True
の動作 - manage.py runserver
DEBUG=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 のためのものであるほど単純に見えます...
読み取りと書き込みのためにアプリのロックを解除する必要がある場所はありますか?
アプリを読み取り専用にする理由として考えられるものは何ですか?