Skip to content

Instantly share code, notes, and snippets.

@ever-dev
Created November 7, 2019 22:49
Show Gist options
  • Save ever-dev/3768e63070d8b16a4ac1dd6266393ebe to your computer and use it in GitHub Desktop.
Save ever-dev/3768e63070d8b16a4ac1dd6266393ebe to your computer and use it in GitHub Desktop.
from django.contrib import admin
from .models import (
Item, OrderItem, Order, Payment, Coupon, Refund,
Address, UserProfile, Variation, ItemVariation
)
def make_refund_accepted(modeladmin, request, queryset):
queryset.update(refund_requested=False, refund_granted=True)
make_refund_accepted.short_description = 'Update orders to refund granted'
class OrderAdmin(admin.ModelAdmin):
list_display = ['user',
'ordered',
'being_delivered',
'received',
'refund_requested',
'refund_granted',
'shipping_address',
'billing_address',
'payment',
'coupon'
]
list_display_links = [
'user',
'shipping_address',
'billing_address',
'payment',
'coupon'
]
list_filter = ['ordered',
'being_delivered',
'received',
'refund_requested',
'refund_granted']
search_fields = [
'user__username',
'ref_code'
]
actions = [make_refund_accepted]
class AddressAdmin(admin.ModelAdmin):
list_display = [
'user',
'street_address',
'apartment_address',
'country',
'zip',
'address_type',
'default'
]
list_filter = ['default', 'address_type', 'country']
search_fields = ['user', 'street_address', 'apartment_address', 'zip']
class ItemVariationAdmin(admin.ModelAdmin):
list_display = ['variation',
'value',
'attachment']
list_filter = ['variation', 'variation__item']
search_fields = ['value']
class ItemVariationInLineAdmin(admin.TabularInline):
model = ItemVariation
extra = 1
class VariationAdmin(admin.ModelAdmin):
list_display = ['item',
'name']
list_filter = ['item']
search_fields = ['name']
inlines = [ItemVariationInLineAdmin]
admin.site.register(ItemVariation, ItemVariationAdmin)
admin.site.register(Variation, VariationAdmin)
admin.site.register(Item)
admin.site.register(OrderItem)
admin.site.register(Order, OrderAdmin)
admin.site.register(Payment)
admin.site.register(Coupon)
admin.site.register(Refund)
admin.site.register(Address, AddressAdmin)
admin.site.register(UserProfile)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment