zoukankan      html  css  js  c++  java
  • Django 中admin添加数据并渲染主页

    admin的使用

    一、在admin中引入models类名称      

      首先在admin.py中引入models
        from .models import *

      其次
        admin.site.register(UserInfo)     UserInfo这个是models中的类名
        admin.site.register(Blog)      Blog这个是Blog中的类名
        admin.site.register(Tag)

    二、文件上传:

    form请求

    1、obj = request.FILES.get("f") #得到一个对象

    2、<form action="" method="post" enctype="multipart/form-data">

    ajax请求:

      1、首先实例化配置一个formdata对象;
        然后一组一组键值对加入formdata;
        (本次例子有三组键值对,以后以实际为主)

        formdata.append("pwd",$("#pwd").val());键和值以逗号分隔


      2、在ajax中formdata作为data的值
        url:"/put_ajax/",
        type:"post",
        data:formdata,

        用 contentType:false,processData:false,这两个参数同时指定为false,至此整个过程结束

       *******总结:我们利用一个formdata加两个参数(contentType:false,processData:false,)解决了ajax上传文件的问题(这个要记住)

    三、JS中的$.each()

    $.each()在jQuery中是一种封装的方法,基于jQuery类方法,类似于python中的for循环
    //方式1
        var arr = [111,222,333]
        $.each(arr,function (i, j) {
            console.log(i,j)
        })
    结果:0    111
            1     222
            2     333
            
        var d = {"name":"alex","age":"33"}
        $.each(d,function (i, j) {
            console.log(i,j)
        })
    结果:name        alex
            age           33   
    
    
         方式2
        $("p").each(function () {
            console.log($(this).html())
        })
    

      

        $("#avatar").change(function () {
            var choose_file = $(this)[0].files[0];
            var reader = new FileReader();//实例化阅读器对象
            reader.readAsDataURL(choose_file);
            reader.onload=function () {
                $("#avatar_img").attr("src",this.result)     //attr不能使用set替换,set针对dom对象
            }
        });
    

      

     四、media的配置及使用

        static文件夹是用来存放静态文件的,而media是用来存放用户上传的文件的    

            静态文件:static: css JS img font

            用户上传文件: media : avatar file等

      1、media的配置

    针对FileField,ImageField字段:
    
    		avatar = models.FileField(upload_to = 'avatars/',default="/avatar/default.png")
    
    		 默认会将FileField字段中的upload_to参数对应的值avatar文件下载到项目根目录下
    
    		如果 在settings中配置了一句:
    
    					MEDIA_URL="/media/"
    					MEDIA_ROOT=os.path.join(BASE_DIR,"app01","media") 
    
    
    					将FileField字段中的upload_to参数对应的值avatar下载到MEDIA_ROOT路径下
    

      2、media的使用

    使用media:
    
    		settings.py 
    				MEDIA_URL="/media/"
    				MEDIA_ROOT=os.path.join(BASE_DIR,"app01","media")
    
    
    		urls.py
    			from django.views.static import serve    #导入静态文件处理的views控制包
    			from s1_cnblog import settings      #导入项目文件夹中settings中的MEDIA_ROOT绝对路径
                  re_path('media/(?P<path>.*)',serve,{'document_root':settings.MEDIA_ROOT})

          html中 <img width="50" height="50" src="/media/{{ article_obj.user.avatar }}

      

  • 相关阅读:
    网速测速结果,单位换算
    js实现多个列表分别倒计时功能
    微信小程序使用wxs在页面中调用js函数,颜色值格式转换 rgb和十六进制的转换
    css样式列表宽度自适应布局
    投资轮次说明
    Ajax与JSON共同使用的小实例
    js结构
    关于vue的小实例
    label与input之间的对应
    购物demo
  • 原文地址:https://www.cnblogs.com/mainstream/p/11124940.html
Copyright © 2011-2022 走看看