33 lines
996 B
Python
33 lines
996 B
Python
from base.models import Feed, Item
|
|
from django.contrib import admin
|
|
|
|
class FeedAdmin(admin.ModelAdmin):
|
|
list_display = ['name', 'url', 'parsed_date']
|
|
ordering = ['parsed_date']
|
|
actions = ['read_feed']
|
|
|
|
def read_feed(modeladmin, request, queryset):
|
|
for feed in queryset:
|
|
feed.read()
|
|
read_feed.short_description = "Read selected feeds"
|
|
|
|
admin.site.register(Feed, FeedAdmin)
|
|
|
|
|
|
class ItemAdmin(admin.ModelAdmin):
|
|
list_display = ['mark', 'title_with_link', 'expire_date', 'published_date', 'source']
|
|
list_filter = ['mark', 'source', 'expire_date']
|
|
ordering = ['-expire_date']
|
|
actions = ['mark_item', 'unmark_item']
|
|
|
|
def mark_item(modeladmin, request, queryset):
|
|
queryset.update(mark=True)
|
|
mark_item.short_description = "Mark selected items"
|
|
|
|
def unmark_item(modeladmin, request, queryset):
|
|
queryset.update(mark=False)
|
|
unmark_item.short_description = "Unmark selected items"
|
|
|
|
admin.site.register(Item, ItemAdmin)
|
|
|