【问题标题】:Django admin AppDjango 管理应用程序
【发布时间】:2010-02-25 11:56:02
【问题描述】:

我正在构建一个应用程序。该应用程序将构建民意调查或测验。 所以我的模型会有一个类型字段(投票、测验)

现在我想在管理应用列表中显示 2 个“类型”。但我不知道创建两个应用程序 Poll 和 Quiz。有没有办法在列表中显示 2 个选项,然后当您单击让我们说 Poll 时,类型字段设置为 Poll,然后您填写其余的模型字段。

谢谢

【问题讨论】:

    标签: django django-models django-admin


    【解决方案1】:

    看一下 django 的第二个教程页面。它描述了如何做到这一点。

    http://docs.djangoproject.com/en/1.1/intro/tutorial02/#intro-tutorial02

    1. 您需要激活管理站点:
      1. 将“django.contrib.admin”添加到您的 INSTALLED_APPS 设置中。
      2. 运行 python manage.py syncdb。
      3. 更新 urls.py

    # 取消注释接下来的两行以启用管理员:

    from django.contrib import admin
    admin.autodiscover()
    

    将下一行添加到 urlpatterns

        (r'^admin/', include(admin.site.urls)),
    

    2 。您需要将模型添加到管理界面

    您只需要在您的应用程序目录中创建一个admin.py(例如polls)并填写以下内容:

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

    当然,您必须更改第一行以适合您的项目名称。

    希望这会有所帮助!

    【讨论】:

    • 这是正确的,但不是我的意思。我的意思是:我的models.py 中只有一个模型。现在在我的管理页面中,我想在该应用程序下提供两个选项。这两个选项不是实际模型。它们只是模型中一个字段列表中的两个可能选项。所以我的模型中有一个字段叫做 question_type = models.CharField(choises=QUESTION_CHOICE) 我希望 QUESTION_CHOICE tupil 中的这 2 类问题显示在应用程序下的管理员中。因此,如果您单击让我们说选项 1,那么这就是列表中选定的选项
    【解决方案2】:

    唉!我想通了! 您使用的是 Django 代理模型 http://docs.djangoproject.com/en/1.1/topics/db/models/#id8

    所以我在我的 models.py 文件中设置了一个代理模型,然后在 admin.py 中我只是将代理模型用作管理员。

    【讨论】:

      猜你喜欢
      • 2010-09-25
      • 1970-01-01
      • 1970-01-01
      • 2011-06-20
      • 2012-12-18
      • 1970-01-01
      • 2018-10-23
      • 2014-03-23
      • 1970-01-01
      相关资源
      最近更新 更多