Python学习过程遇到的坑(2)

xiaoxiao2021-02-28  37

1.HTML导入CSS和JS
{% load static %}<!doctype html><html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>首页</title><link rel="stylesheet" type="text/css" href="{% static 'css/style.css' %}"><!-- <link rel="stylesheet/less" type="text/css" href="css/style.less" /> --><script type="text/javascript" src="{% static 'js/jquery-1.7.2.min.js' %}"></script><script type="text/javascript" src="{% static 'js/all.js' %}"></script></head>
2.django如何获取数据库中所有的区域并显示在前端下拉框
<select class="form-control" id="area-id" name="area_id"> {% for obj in area %} <option value="{{ forloop.counter }}">{{ obj }}</option> {% endfor %} </select>
3.下拉框显示的内容全部为area object

尝试了多种办法无果,最后解决了,处理办法是修改models.py,原来的model:

class TechnicistLocation(models.Model): # 技术人员位置 area = models.CharField('位置名称', max_length=20 class Meta: verbose_name_plural = '技术人员位置' app_label ="schedule" def __unicode__(self): return self.area

修改后的model:

class TechnicistLocation(models.Model): # 技术人员位置 area = models.CharField('位置名称', max_length=20) class Meta: verbose_name_plural = '技术人员位置' app_label ="schedule" def __str__(self): return self.area
4.上传图片一直提示403

在表单处添加{% csrf_token %}

5.上传图片后,web开发者工具没有报错,但是数据库并没有图片信息

后台代码:

# 上传新房源,@csrf_exempt 注解来标识一个视图可以被跨域访问 @csrf_exempt def my_new_house(request): if request.method == 'GET': return render(request, 'newhouse.html', data) if request.method == 'POST': #获取上传的图片信息,此处的index_img_url只是一个变量名称,和model中的变量名没有关系!!! #get到的house_image也是我们获取到图片后取得名字,该名字需要和web前端变量名称保持一致 index_img_url = request.FILES.get('house_image') #将获取到的图片信息插入到数据库中 house = House.objects.create( index_img_url=index_img_url ) return JsonResponse(data)

前端代码:

<form id="form-house-image" action="/app/addnewhouse/" method="post" enctype="multipart/form-data"> #为在用户提交表单的时候防止跨站攻击,在form表单处都应该添加{% csrf_token %} {% csrf_token %} <input type="hidden" name="house_id" id="house-id" value=""> <li> <div class="house-title"> <h3>添加图片</h3> </div> <div class="house-content"> <div class="house-image-cons"> </div> <div class="form-group"> <label for="house-image">选择图片</label> #request.FILES.get('house_image')中的变量名称house_image #就是我们前端上传图片后定义的定义的name #此处的name和id应该保持一致 <input type="file" name="house_image" id="house-image"> </div> <input type="submit" class="btn btn-success" value="上传"> </div> </li> </form>
6.如何取消JS中的注释

// 双斜杠 注释 和取消注释都是ctrl+/ /* 注释内容 */ 注释:ctrl+shift+/ 取消注释:ctrl+shift+\

7.CheckBox取值
tags = Request.POST.getlist('tags')
8.如何导入前端JS和CSS
{% load static %} #按照以下方式导入!自己经常在这个位置出错,一定要注意 <script src="{% static 'js/s/jquery.min.js' %}"></script> <script src="{% static 'js/s/bootstrap.min.js' %}"></script> <link href="{% static 'css/s/bootstrap.min.css' %} }" rel="stylesheet">
9.取消git分枝合并
git reset --hard HEAD
转载请注明原文地址: https://www.6miu.com/read-2619666.html

最新回复(0)