You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
68 lines
2.0 KiB
68 lines
2.0 KiB
from django.db import models |
|
from django.contrib import admin |
|
|
|
class Section(models.Model): |
|
""" |
|
A simple section that links to articles, to test linking to related items |
|
in admin views. |
|
""" |
|
name = models.CharField(max_length=100) |
|
|
|
class Article(models.Model): |
|
""" |
|
A simple article to test admin views. Test backwards compatibility. |
|
""" |
|
title = models.CharField(max_length=100) |
|
content = models.TextField() |
|
date = models.DateTimeField() |
|
section = models.ForeignKey(Section) |
|
|
|
def __unicode__(self): |
|
return self.title |
|
|
|
class ArticleInline(admin.TabularInline): |
|
model = Article |
|
|
|
class ArticleAdmin(admin.ModelAdmin): |
|
list_display = ('content', 'date') |
|
list_filter = ('date',) |
|
|
|
def changelist_view(self, request): |
|
"Test that extra_context works" |
|
return super(ArticleAdmin, self).changelist_view( |
|
request, extra_context={ |
|
'extra_var': 'Hello!' |
|
} |
|
) |
|
|
|
class CustomArticle(models.Model): |
|
content = models.TextField() |
|
date = models.DateTimeField() |
|
|
|
class CustomArticleAdmin(admin.ModelAdmin): |
|
""" |
|
Tests various hooks for using custom templates and contexts. |
|
""" |
|
change_list_template = 'custom_admin/change_list.html' |
|
change_form_template = 'custom_admin/change_form.html' |
|
object_history_template = 'custom_admin/object_history.html' |
|
delete_confirmation_template = 'custom_admin/delete_confirmation.html' |
|
|
|
def changelist_view(self, request): |
|
"Test that extra_context works" |
|
return super(CustomArticleAdmin, self).changelist_view( |
|
request, extra_context={ |
|
'extra_var': 'Hello!' |
|
} |
|
) |
|
|
|
class ModelWithStringPrimaryKey(models.Model): |
|
id = models.CharField(max_length=255, primary_key=True) |
|
|
|
def __unicode__(self): |
|
return self.id |
|
|
|
admin.site.register(Article, ArticleAdmin) |
|
admin.site.register(CustomArticle, CustomArticleAdmin) |
|
admin.site.register(Section, inlines=[ArticleInline]) |
|
admin.site.register(ModelWithStringPrimaryKey)
|
|
|