【问题标题】:Django: How to access instance of a model directly from admin indexDjango:如何直接从管理索引访问模型实例
【发布时间】:2013-03-20 19:37:59
【问题描述】:

我想要一个首选项应用程序,其中只有一个包含一些全局设置的实例。

# preferences/models.py
class Preferences(models.Model):
    site_title = models.CharField(max_length=255, blank=True)
    site_url = models.CharField(max_length=255, blank=True)
    logo = models.ImageField(upload_to="logo", null=True)

    def save(self, *args, **kwargs):
        if Preferences.objects.count() > 1:
            return
        super(Preferences, self).save(*args, **kwargs)

保存覆盖的功劳:这个ticket。 另外,我删除了添加按钮,再次感谢前面提到的ticket

# preferences/admin.py
class PreferencesAdmin(admin.ModelAdmin):
    def has_add_permission(self, request):
        num_objects = self.model.objects.count()
        if num_objects >= 1:
            return False
        else:
            return True

admin.site.register(Preferences, PreferencesAdmin)

现在,我只想直接从管理索引页面跳转到我的 Preferences 模型的第一个也是唯一一个实例。有什么建议我怎么能做到这一点?感谢您的帮助。

【问题讨论】:

    标签: django django-admin


    【解决方案1】:

    找到了一个应用程序来做到这一点:https://github.com/ionata/django-singletons 请务必使用上面的 fork,因为原始 singletons 不适用于 Django 1.5

    【讨论】:

      猜你喜欢
      • 2015-11-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-10-31
      • 2012-05-12
      • 2011-09-08
      • 2011-07-29
      • 2011-04-21
      相关资源
      最近更新 更多