1.可以兼容django2.0的xadmin我上传到我的网盘里了:

  1. 链接: https://pan.baidu.com/s/1NZvPTeHDemXPPw-Ib-VeCQ 提取码: q2pp

2.将xadmin拖入项目的extra_apps目录下:

3.安装依赖包:

  1. pip install django-crispy-forms django-reversion django-formtools future httplib2 six django-import-export
  2. pip install xlwt xlsxwriter

4.在settings.py中注册:

  1. INSTALLED_APPS = [
  2. \'django.contrib.admin\',
  3. \'django.contrib.auth\',
  4. \'django.contrib.contenttypes\',
  5. \'django.contrib.sessions\',
  6. \'django.contrib.messages\',
  7. \'django.contrib.staticfiles\',
  8. \'users.apps.UsersConfig\',
  9. \'ad.apps.AdConfig\',
  10. \'trade.apps.TradeConfig\',
  11. \'user_operation.apps.UserOperationConfig\',
  12. \'crispy_forms\',
  13. \'xadmin\'
  14. ]

5.执行数据更新命令,生成xadmin默认的表:

  1. python manage.py makemigrations
  2. python manage.py migrate

6.在gg/urls.py中配置xadmin路由:

  1. from django.contrib import admin
  2. from django.urls import path
  3. from django.views.static import serve
  4. from gg.settings import MEDIA_ROOT
  5. import xadmin
  6. urlpatterns = [
  7. #path(\'admin/\', admin.site.urls),
  8. path(\'media/<path:path>\',serve,{\'document_root\':MEDIA_ROOT}),
  9. path(\'xadmin/\', xadmin.site.urls),
  10. ]

7.新建超级用户:

  1. python manage.py createsuperuser
  2. Username: root
  3. Email address: 760680498@qq.com
  4. Password:
  5. Password (again):
  6. #Superuser created successfully.

 创建完毕,启动项目,然后访问

  1. http://127.0.0.1:8000/xadmin/

就可以登录xadmin后台了,但是此时后台还是英文的。

  1. LANGUAGE_CODE = \'zh-hans\'
  2. TIME_ZONE = \'Asia/Shanghai\'
  3. USE_I18N = True
  4. USE_L10N = True
  5. USE_TZ = False

1.在apps/users/apps.py中:

  1. from django.apps import AppConfig
  2. class UsersConfig(AppConfig):
  3. name = \'users\'
  4. verbose_name = \'用户\'

2.在apps/ad/apps.py中:

  1. from django.apps import AppConfig
  2. class AdConfig(AppConfig):
  3. name = \'ad\'
  4. verbose_name = \'广告和店铺\'

3.在apps/trade/apps.py中:

  1. from django.apps import AppConfig
  2. class TradeConfig(AppConfig):
  3. name = \'trade\'
  4. verbose_name = \'交易\'

4.在apps/user_operation/apps.py中:

  1. from django.apps import AppConfig
  2. class UserOperationConfig(AppConfig):
  3. name = \'user_operation\'
  4. verbose_name = \'用户操作\'

1.在apps/users目录下新建adminx.py:

  1. import xadmin
  2. from xadmin import views
  3. from .models import UserProfile,Area
  4. class BaseSetting(object):
  5. enable_themes = True
  6. use_bootswatch = True
  7. class GlobalSettings(object):
  8. site_title = "今日同城小广告"
  9. site_footer = "落忆科技网络有限责任公司"
  10. # menu_style = "accordion"
  11.  
  12.  
  13. class UserProfileAdmin(object):
  14. list_display = ["username","is_staff","nickName","gender" ,"city", "jifen","yongjin","fensi_num"]
  15. list_display_links=["username","nickName"]
  16. list_filter = ["username","nickName","avatarUrl" ,"open_id", "token","gender","city" ,"longitude","latitude","jifen","yongjin","fensi_num"]
  17. search_fields = ["username","nickName","gender" ,"city", "jifen","yongjin","fensi_num"]
  18. class AreaAdmin(object):
  19. list_display = ["num", "name", "category_type", "parent_category", "add_time"]
  20. list_filter = ["num", "name", "category_type", "parent_category", "add_time"]
  21. search_fields = ["num", "name", "category_type"]
  22. # 先注销模块,再注册
  23. xadmin.site.unregister(UserProfile)
  24. xadmin.site.register(UserProfile, UserProfileAdmin)
  25. xadmin.site.register(Area, AreaAdmin)
  26. xadmin.site.register(views.BaseAdminView, BaseSetting)
  27. xadmin.site.register(views.CommAdminView, GlobalSettings)

 

注意:在UserProfileAdmin中不能加时间字段,不然会报错。

2.在apps/ad目录下新建adminx.py:

  1. import xadmin
  2. from .models import Category,Good,Prize,Images
  3. class CategoryAdmin(object):
  4. list_display = ["name", "category_type", "parent_category", "is_tab", "add_time"]
  5. list_filter = ["name", "category_type", "parent_category", "is_tab", "add_time"]
  6. search_fields = ["name", "category_type", "parent_category", "is_tab"]
  7. class GoodAdmin(object):
  8. list_display = ["stage","type","title", "desc", "address", "mobile", "pv","category","area","user","image_url","add_time"]
  9. list_filter = ["stage","title", "desc", "address", "mobile", "pv","category","area","user","type","add_time"]
  10. search_fields = ["stage","title", "desc", "address", "mobile", "pv","category","area","user","type"]
  11. class PrizeAdmin(object):
  12. list_display = ["title", "get_num", "url","price", "area","all_num", "desc","usage","end_time","image_url","add_time"]
  13. list_filter = ["title", "get_num", "url","price", "area","all_num", "desc","usage","end_time","add_time"]
  14. search_fields = ["title", "get_num", "price", "all_num", "desc","usage"]
  15. class ImagesAdmin(object):
  16. list_display = ["is_banner", "good", "image_url", "add_time"]
  17. list_filter = ["is_banner", "good","add_time"]
  18. search_fields = ["is_banner", "good"]
  19. xadmin.site.register(Category, CategoryAdmin)
  20. xadmin.site.register(Good, GoodAdmin)
  21. xadmin.site.register(Prize, PrizeAdmin)
  22. xadmin.site.register(Images, ImagesAdmin)

3.在apps/trade目录下新建adminx.py:

  1. import xadmin
  2. from .models import Price,Order,ShoppingCar
  3. class PriceAdmin(object):
  4. list_display = ["top_type", "price", "fanwei", "days", "add_time"]
  5. list_filter = ["top_type", "price", "fanwei", "days", "add_time"]
  6. search_fields = ["top_type", "price", "fanwei", "days"]
  7. class OrderAdmin(object):
  8. list_display = ["user", "good","order_sn", "pay_status", "trade_no", "order_mount","pay_time","add_time"]
  9. list_filter = ["user", "good","order_sn", "pay_status", "trade_no", "order_mount","pay_time","add_time"]
  10. search_fields = ["order_sn", "pay_status", "trade_no", "order_mount"]
  11. class ShoppingCarAdmin(object):
  12. list_display = ["user", "order", "top_good", "goods_num", "price","add_time"]
  13. list_filter = ["user", "order", "top_good", "goods_num", "price","add_time"]
  14. search_fields = ["user", "order", "top_good", "goods_num", "price"]
  15. xadmin.site.register(Price, PriceAdmin)
  16. xadmin.site.register(Order, OrderAdmin)
  17. xadmin.site.register(ShoppingCar, ShoppingCarAdmin)

 

4.在apps/user_operation目录下新建adminx.py:

  1. import xadmin
  2. from .models import Message,GetPrize,UserAdress,Fans,MakeMoney,GetCash
  3. class MessageAdmin(object):
  4. list_display = ["user", "content", "is_read", "add_time"]
  5. list_filter = ["user", "content", "is_read", "add_time"]
  6. search_fields = ["user", "content", "is_read"]
  7. class GetPrizeAdmin(object):
  8. list_display = ["user", "prize", "status", "add_time"]
  9. list_filter = ["user", "prize", "status", "add_time"]
  10. search_fields = ["user", "prize", "status"]
  11. class UserAdressAdmin(object):
  12. list_display = ["user", "address", "phone", "name","add_time"]
  13. list_filter = ["user", "address", "phone", "name","add_time"]
  14. search_fields = ["user", "address", "phone", "name"]
  15. class FansAdmin(object):
  16. list_display = ["user", "fans", "add_time"]
  17. list_filter = ["user", "fans", "add_time"]
  18. search_fields = ["user", "fans"]
  19. class MakeMoneyAdmin(object):
  20. list_display = ["user", "fans","money","add_time"]
  21. list_filter = ["user", "fans","money","add_time"]
  22. search_fields = ["user", "fans","money"]
  23. class GetCashAdmin(object):
  24. list_display = ["user","money","add_time"]
  25. list_filter = ["user","money","add_time"]
  26. search_fields = ["user","money"]
  27. xadmin.site.register(Message, MessageAdmin)
  28. xadmin.site.register(GetPrize, GetPrizeAdmin)
  29. xadmin.site.register(UserAdress, UserAdressAdmin)
  30. xadmin.site.register(Fans, FansAdmin)
  31. xadmin.site.register(MakeMoney, MakeMoneyAdmin)
  32. xadmin.site.register(GetCash, GetCashAdmin)

 

版权声明:本文为xuepangzi原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/xuepangzi/p/10798913.html