1 2 3 4

admin后台管理与media配置

admin后台管理

主要功能

django给你提供了一个可视化的界面用来让你方便的对你的模型表
进行数据的增删改查操作

使用

如果你先想要使用amdin后台管理操作模型表
你需要先注册你的模型表告诉admin你需要操作哪些表
去你的应用下的admin.py中注册你的模型表
  from django.contrib import admin
  from app01 import models
  # Register your models here.


  admin.site.register(models.UserInfo)
  admin.site.register(models.Blog)
  admin.site.register(models.Category)
  admin.site.register(models.Tag)
  admin.site.register(models.Article)
  admin.site.register(models.Article2Tag)
  admin.site.register(models.UpAndDown)
  admin.site.register(models.Comment)

用那张表就注册哪个
# admin会给每一个注册了的模型表自动生成增删改查四条url
http://127.0.0.1:8000/admin/app01/userinfo/ 查
http://127.0.0.1:8000/admin/app01/userinfo/add/ 增
http://127.0.0.1:8000/admin/app01/userinfo/1/change/ 改
http://127.0.0.1:8000/admin/app01/userinfo/1/delete/ 删

media配置

1 网址所使用的静态文件默认放在static文件夹下
2 用户上传的静态文件也应该单独放在某个文件夹下

如何使用

media配置:
    该配置可以让用户上传的所有文件都固定存放在某一个指定的文件夹下
    # 配置用户上传的文件存储位置
    MEDIA_ROOT = os.path.join(BASE_DIR,'media')  # 文件名 随你 自己
    会自动创建多级目录

如何开设后端指定文件夹资源:
    首先你需要自己去urls.py书写固定的代码
    from django.views.static import serve
    from BBS14 import settings
        
    # 暴露后端指定文件夹资源(固定格式)
  url(r'^media/(?P<path>.*)',serve,{'document_root':settings.MEDIA_ROOT})

数据库中日期的年月日只获取年月

id         content                create_time                    month
1            111                  2020-11-11                    2020-11
2            222                  2020-11-12                    2020-11
3            333                  2020-11-13                    2020-11
4            444                  2020-11-14                    2020-11
5            555                  2020-11-15                    2020-11
"""
django官网提供的一个orm语法
    from django.db.models.functions import TruncMonth
-官方提供
            from django.db.models.functions import TruncMonth
            Sales.objects
            .annotate(month=TruncMonth('timestamp'))  # Truncate to month and add to select list
            .values('month')  # Group By month
            .annotate(c=Count('id'))  # Select the count of the grouping
            .values('month', 'c')  # (might be redundant, haven't tested) select month and count

如果
时区问题报错,在配置文件中配置:
TIME_ZONE = 'Asia/Shanghai'
USE_TZ = True

 

posted @ 2020-06-12 01:26  臭弟弟d  阅读(242)  评论(0编辑  收藏  举报