day 68 bbs项目知识点

admin后台管理(******)
能够对注册了的模型表 生成增删改查起码四个页面
http://127.0.0.1:8000/admin/app01/userinfo/ 查看用户
http://127.0.0.1:8000/admin/app01/userinfo/1/change/ 编辑用户
http://127.0.0.1:8000/admin/app01/userinfo/add/ 添加用户
http://127.0.0.1:8000/admin/app01/userinfo/2/delete/ 删除用户

http://127.0.0.1:8000/admin/app01/blog/ 查看个人站点
http://127.0.0.1:8000/admin/app01/blog/1/change/ 编辑个人站点
http://127.0.0.1:8000/admin/app01/blog/add/ 添加个人站点
http://127.0.0.1:8000/admin/app01/blog/2/delete/ 删除个人站点



用户头像的渲染
网站默认的静态文件资源 默认放在static文件夹下
用户上传的静态文件资源 也应该单独存放在某一个文件夹

# 规定用户上传的静态文件资源全部放到某一个指定的文件夹下
MEDIA_ROOT = os.path.join(BASE_DIR,'media')

from django.views.static import serve
from BBS import settings
# 暴露给外界的后端文件资源
url(r'^media/(?P<path>.*)',serve,{'document_root':settings.MEDIA_ROOT})


图片防盗链
请求来的时候 会检测当前请求的源地址是否来自于网站自己的
refer 放在请求头里面的数据 用来表示你是属于哪个网站

如果还想用 最简单粗暴的方式就是先下载到本地(写爬虫自动下)




对日期进行切割
日期归档          content          create_time     month
1                         111              2019-11-1       2019-11 
1                         111              2019-11-25     2019-11
1                         111              2019-11-10     2019-11
1                         111              2019-10-1       2019-10

#官方提供的文档
from django.db.models.functions import TruncMonth
Article.objects
.annotate(month=TruncMonth('create_time'))     # 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

注意:当你写的url再访问的时候发现没有命中,那么你应该去urls.py中查看是否被前面的url中途拦截了 最省力的解决方式 就是调换位置



自定义inclusion_tag
当页面上的某一块区域需要经常被使用 并且需要传参数才能够渲染出来 
那么你可以考虑使用inclusion_tag

自定义inclusion_tag的步骤:       

#跟自定义过滤器和标签是一样的
1.创建一个名字必须交templatetags文件夹
2.新建任意一个py文件
3.py文件内 写固定的两行代码
from django.template import Library
register = Library()

#工作原理     

类似于函数的调用过程
你在使用inclusion_tag的时候,可以为其传参,它会将参数传递给一个html页面
该页面会利用传递过来的参数 渲染页面 然后将渲染好的页面 放在调用inclusion_tag的地方





























猜你喜欢

转载自www.cnblogs.com/wwei4332/p/11799572.html
68