django删除表重建&修改用户密码&base64加密解密字符串&ps aux参数说明&各种Error例子

1.django的queryset不支持负索引

AssertionError: Negative indexing is not supported.

2.django向前端JavaScript传递列表:

return render(request, 'home.html', {"mem_data": json.dumps(mem_data))
chartData_mem = {{ mem_data | safe }};
或者
chartData_mem = JSON.parse('{{ mem_data|safe }}');
在这里声明变量,变量前不能加var
JSON.stringfy()将对象、数组转换成字符串;
JSON.parse()将字符串转成json对象.

3.django删除表重建

先到数据库把表删掉:drop table;
注释django中对应的Model;
执行以下命令:python manage.py makemigrations
python manage.py migrate --fake
去掉注释重新迁移
python manage.py makemigrations;
python manage.py migrate

4.用base64加密解密字符串

vrvlink  root1234	
username1 = base64.encodebytes(b'vrvlink')
password1 = base64.encodebytes(b'root1234')
username1
b'dnJ2bGluaw==\n'
password1
b'cm9vdDEyMzQ=\n'
解密
username = base64.decodebytes(username1.encode()).decode()
password = base64.decodebytes(password.encode()).decode()

5.django修改用户密码

python manage.py shell
from django.contrib.auth.models import User
user=User.objects.get(username='XXX')
user.set_password('new_password')
user.save()
或者
python manage.py changepassword username

6.ps aux参数说明(以BSD的格式来显示进程)

# ps aux  | grep "mail\b"
root     30326  0.0  0.0 277384  9656 ?        Sl   Sep18  18:56 ./mail
root     31471  0.0  0.0 103332   864 pts/0    S+   14:23   0:00 grep mail\b
显示的项目有:USER,PID,%CPU,%MEM,VSZ,RSS,TTY,STAT,START,TIME,COMMAND
USER:进程所有者
PID:用户进程号
%CPU:进程占用的CPU百分比 
%MEM:占用内存的百分比
VSZ:该进程使用的虚拟內存量(KB)
RSS:该进程占用的固定內存量(KB)
STAT:进程的状态 
START:该进程被触发启动时间 
TIME:该进程实际使用CPU运行的时间
COMMAND:进程启动的命令

7.IndexError:list index out of range的错误原因

第1种可能情况
list[index]index超出范围
第2种可能情况
list是一个空的,没有元素,进行list[0]就会出现该错误
我在统计一个程序tomcat的运行时间-run_time时,对一个空列表用了[0],以后当然要避免

8.在取数据的时候要排序(例如第11行),否则可能有如下警告:

UnorderedObjectListWarning: 
Pagination may yield inconsistent results with an unordered object_list:

9.CommandError: "http://172.16.8.128:10002"

is not a valid port number or address:port pair.

报这样的错是因为我启动时用的命令错了:
python3  manage.py runserver http://172.16.8.128:10002
不应该加http://,正确命令:
python3  manage.py runserver 172.16.8.128:10002

10.json.dump()文件更加美观

json.dump(data,f,ensure_ascii=False,sort_keys=True,indent=4)

11.ValueError、TypeError

ValueError: invalid literal for int() with base 10: '10%'
可以int字符串"10",但不能int"10%"、"1.0"这样的字符串.
TypeError: int() argument must be a string, 
a bytes-like object or a number, not 'NoneType'
意思是:你用int可以去整型字符串或数字,但不能为空.

12.RuntimeError

RuntimeError: You called this URL via POST, 
but the URL doesn’t end in a slash and you have APPEND_SLASH set
视图函数给一个函数加上了@require_POST,然后给这个函数发送数据时,
url写成了下面这样的格式,然后就报如上错
http://192.168.165.10:8000/show/company_data
正确的写法是:在url后面加上"/"

13.终端显示警告:

[05/Sep/2017 12:24:59] "GET /hello HTTP/1.1" 404 1947

Not Found: /favicon.ico

找一个图片格式为ico,命名成:favicon.ico,拷贝到django下的
./contrib/admin/static/admin/img/
终端错误消失问题解决.

14.bit、Byte

bit:电脑记忆体中最小的单位
Byte:字节单位,一般表示存储介质大小的单位,一个B(常用大写的B来表示Byte)
可代表一个字母(A~Z)、数字(0~9)、或符号(,.?!%&+-*/),但中文字需要2个Byte.
1 Byte = 8 bits
1 KB = 1024 Bytes
bps:“bits per second”常用于表示数据机及网络通讯的传输速率
Bps:“Byte per second”电脑一般都以Bps显示速度.

猜你喜欢

转载自www.cnblogs.com/fawaikuangtu123/p/9960244.html