admin.py 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114
  1. from django.contrib import admin
  2. from models import *
  3. class CategoryAdmin(admin.ModelAdmin):
  4. prepopulated_fields = {"slug": ("title",)}
  5. admin.site.register(Category, CategoryAdmin)
  6. class SubcategoryAdmin(admin.ModelAdmin):
  7. prepopulated_fields = {"slug": ("title",)}
  8. admin.site.register(Subcategory, SubcategoryAdmin)
  9. class HoursInline(admin.TabularInline):
  10. "Easy editing of hours relations from the business entry page"
  11. extra = 1
  12. model = Hours
  13. class DiningHoursInline(admin.TabularInline):
  14. "Easy editing of hours relations from the business entry page"
  15. extra = 2
  16. model = DiningHours
  17. class BusinessPhotoInline(admin.TabularInline):
  18. "Easy editing of hours relations from the business entry page"
  19. extra = 6
  20. model = BusinessPhoto
  21. class BusinessAdmin(admin.ModelAdmin):
  22. raw_id_fields = (
  23. "point",
  24. "post_office",
  25. )
  26. list_display = (
  27. "name",
  28. "point",
  29. "status",
  30. )
  31. list_filter = ("status", "categories", "subcategories")
  32. search_fields = (
  33. "name",
  34. "description",
  35. )
  36. prepopulated_fields = {"slug": ("name",)}
  37. inlines = [
  38. BusinessPhotoInline,
  39. HoursInline,
  40. DiningHoursInline,
  41. ]
  42. filter_horizontal = ("payment_accepted",)
  43. admin.site.register(Business, BusinessAdmin)
  44. class GuideAdmin(admin.ModelAdmin):
  45. list_display = (
  46. "title",
  47. "pub_date",
  48. "published",
  49. "featured",
  50. )
  51. list_filter = ("published", "featured")
  52. search_fields = (
  53. "title",
  54. "description",
  55. )
  56. prepopulated_fields = {"slug": ("title",)}
  57. filter_horizontal = ("businesses",)
  58. admin.site.register(Guide, GuideAdmin)
  59. class BranchAdmin(admin.ModelAdmin):
  60. raw_id_fields = ("point",)
  61. list_display = (
  62. "business",
  63. "name",
  64. "point",
  65. )
  66. search_fields = (
  67. "business",
  68. "name",
  69. "description",
  70. )
  71. prepopulated_fields = {"slug": ("name",)}
  72. inlines = [
  73. BusinessPhotoInline,
  74. HoursInline,
  75. DiningHoursInline,
  76. ]
  77. admin.site.register(Branch, BranchAdmin)
  78. admin.site.register(PaymentMethod)
  79. admin.site.register(BusinessPhoto)
  80. admin.site.register(Hours)
  81. admin.site.register(Meal)
  82. admin.site.register(Menu)
  83. admin.site.register(DiningHours)
  84. admin.site.register(Feature)
  85. # admin.site.register(Link)
  86. # admin.site.register(Reference)
  87. # admin.site.register(Ad)