【问题标题】:no admin.py file in new django app新的 django 应用程序中没有 admin.py 文件
【发布时间】:2013-01-30 10:50:14
【问题描述】:

我是 Django 新手,我已经遇到了一个问题。我在 OSX Mountain lion 上使用 Django 1.4.3。

当我使用

启动新应用时
    django-admin.py startapp "name" 

应用程序已创建,所有必要的文件都在其中(__Init__.pymodels.pytests.pyviews.py)。但是,应该自动创建的admin.py 文件不在app 文件夹中。没有它,我将无法编辑我的管理员站点首选项。

关于为什么会发生这种情况的任何想法?

【问题讨论】:

  • 我不记得 admin.py 是自动创建的。无论如何,新应用程序没有任何东西可以放入其中,因为您需要有模型供管理员执行任何操作。
  • @Michael Mior 这很奇怪。我正在浏览 Django 网站上的教程,它说一旦我创建了一个新应用程序,admin.py 文件就应该在那里,但我会环顾四周
  • 一般来说:“如果文件不存在,则创建它”。
  • 不知道为什么人们对这个话题如此讨厌。如果一个框架声称要创建某些文件然后失败了,那么很难知道如果只是自己创建一个文件,您是否会省略适当的导入或框架可能为您做的任何其他事情。

标签: python django django-models django-templates django-admin


【解决方案1】:

您很可能正在阅读开发教程,但使用的是稳定版本(当前为 1.4.3)。 admin.py 是由 startappthis commit 创建的,它还更新了教程文档,但直到 1.6 才会使其成为稳定版本。

【讨论】:

    【解决方案2】:

    Admin.py 未生成。回应 OP 对您对上述帖子的评论:

    来自教程的第 1 部分:https://docs.djangoproject.com/en/1.4/intro/tutorial01/

    让我们看看 startproject 创建了什么:

    mysite/
        manage.py
        mysite/
            __init__.py
            settings.py
            urls.py
            wsgi.py
    

    在第 2 部分,在“使投票应用可在管理员中修改”部分下,它说:

    但是我们的投票应用在哪里?它不显示在管理索引页面上。

    只需要做一件事:我们需要告诉管理员 Poll 对象有一个管理界面。为此,请在您的 polls 目录中创建一个名为 admin.py 的文件,并将其编辑为如下所示:

    from polls.models import Poll
    from django.contrib import admin
    
    admin.site.register(Poll)
    

    【讨论】:

    • 对,但是当它要求开始一个新的应用程序“投票”时,没有 Admin.py 文件。该教程说了很多关于将什么放入所述 Admin.py 文件的内容,但似乎没有说明在何处创建它或在 Django 中的何处启动它。
    • docs.djangoproject.com/en/1.4/intro/tutorial02/… 上,有一个标题为“使投票应用程序在管理员中可修改”在下面的文本描述中它说:“只需要做一件事:我们需要告诉admin 认为 Poll 对象有一个管理界面。为此,请在您的 polls 目录中创建一个名为 admin.py 的文件,然后将其编辑为如下所示......
    【解决方案3】:

    您必须手动创建文件,因为默认情况下禁用 django 管理员。

    关于在 admin.py 中添加什么的说明是 here

    【讨论】:

    猜你喜欢
    • 2013-06-10
    • 1970-01-01
    • 2013-09-02
    • 1970-01-01
    • 1970-01-01
    • 2013-07-29
    • 2018-06-30
    • 2011-08-10
    • 2015-01-24
    相关资源
    最近更新 更多