Django Admin Pages使我的模型无法点击

时间:2013-02-13 00:36:28

标签: django django-models django-admin

出于某种原因,我的/ admin页面使我定义的模型不可编辑。这是在我部署的服务器上使用apache和postgres。我以超级用户身份登录,并显示如下链接:

whhyyyy

如果我在连接到postgres的开发服务器中本地查看相同的代码,它看起来像这样:

enter image description here

知道可能导致这种情况的原因吗?

**更新**

所以它并不总是被阻止。我今天登录了,我可以访问一些操作(我清理了一些来自我的数据库的虚假电子邮件请求),但是在删除了一些行后,它又回到了只读状态。

仍然不知道造成它的原因。

home.models.py:

from django.db import models
from django import forms
from django.utils import timezone

class EmailRequest(models.Model):
    email = models.EmailField()
    created_date = models.DateTimeField(default=timezone.now())


class EmailRequestForm(forms.Form):
    email = forms.EmailField()

home.admin.py:

from django.contrib import admin
from home.models import EmailRequest

class EmailRequestAdmin(admin.ModelAdmin):
    list_display = ('email', 'created_date')

admin.site.register(EmailRequest, EmailRequestAdmin)

2 个答案:

答案 0 :(得分:0)

请参阅以下解决方案: No access to models in admin panel with DEBUG=False

引用:

  

好的,我找到了我的问题的原因。这是因为注册我的   管理面板中的模型来自具有模型定义的文件。当我搬家   我所有的注册到一个外部文件admin.py,然后一切   工作正常。

答案 1 :(得分:0)

我没有直接回答您的问题,但我确实有一些个人见解。首先,使用Bitnami Django堆栈可能是个问题。我曾经使用过几次,而且我再也不会这样了。设置绝对不是理想的,并且有太少的文档可用于使您的生活更容易(等等,不是使用Bitnami堆栈的全部意义吗?)。

我会开始查看你的日志(特别是apache错误日志和postgres错误日志),我打赌那里有一些东西可以指向你正确的方向。

我确信您从本地计算机运行开发服务器,该服务器的设置与Bitnami堆栈完全不同。更好的解决方案是将自己安装在一个准系统的Ubuntu服务器上。然后,您将更加熟悉设置。

你能做的最好的事情就是学习使用Vagrant。这将帮助您维护本地虚拟机实例,该实例与您的EC2框相同。您将使用ssh登录它,就像EC2框一样,您将在外部使用它,就像EC2框一样。您可以越接近开发环境到生产环境,这样的调试问题就越容易。

希望这不会让你的生活变得更加困难(严肃地说,如果你让Vagrant跑步,你的生活会变得更加容易)