Django—笔记

#Django

三握手

四挥手

虚拟环境下打开终端

**1.安装pip ?*sudo spt insttall python-pip3

**2.安装virtualenv :**pip3 install virtualenv

**3.创建虚拟环境文件夹:**mkdir acci

**进入文件夹:**cd acci

配置虚拟环境:

pythopython@buntuS:~/acci$ virtualenv -p /usr/bin/python3 acci

激活虚拟环境(linux):

python@buntuS:~$ source /home/python/acci/bin/activate

激活虚拟环境(windows):

C:\Users\BOSS>cd D:\djangofile\env61\Scripts\

D:\djangofile\env61\Scripts>activate

安装虚拟环境下的gjango:

(acci) python@buntuS:~$ pip3 install django==1.11

关闭虚拟环境: deactivate

4.创建django项目:

python@buntuS:~$ mkdir d1

python@buntuS:~/d1$ django-admin.py startproject d1

python@buntuS:~/djangofile/wuyifan$ django-admin.py startapp login

5.在pychaim打开项目d1

6.设置中配置虚拟环境acci

7.打开左下角Terinal

python manage.py runserver 127.0.0.1:8000

templates

在创建templates中在项目settrings中添加

‘DIRS’: [os.path.join(BASE_DIR, ‘templates’)],

postman在ubuntu中安装:

1.wget https://dl.pstmn.io/download/latest/linux64 -O postman.tar.gz

2.sudo tar -xzf postman.tar.gz -C /opt

3.rm postman.tar.gz

4.sudo ln -s /opt/Postman/Postman /usr/bin/postman

不好意思问,比较内向,跨不出这个坎。没什么不好意思,不懂的就要问,每个人都有能学习的地方,就好多问。

线程

进程

url路由基础:

path传多个参:

urls:path('login1/<int:year>/<int:month>/<str:num>/',views.login1,name='login1'),

views:

def login1(request,year,month,num):
    print('-----')
    print(year,month,num)
    return render(request, 'login1.html')
创建数据库:

models:

class Student(models.Model):
name = models.CharField(max_length=30)
city = models.CharField(max_length=60)
age = models.CharField(max_length=20)
sex = models.CharField(max_length=10)

def str(self):
return self.name

admin:

admin.site.register(Student)

setting:

DATABASES = {
‘default’: {
‘ENGINE’: ‘django.db.backends.mysql’,
‘NAME’: ‘student’,
‘USER’: ‘root’,
‘PASSWORD’: ‘mysql’,
‘HOST’: ‘127.0.0.1’,
‘POST’: 3306
}
}

后端数据:

(env520) python@buntuS:~/djangofile/models528$ :python manage.py makemigrations

python manage.py migrate

 python manage.py createsuperuser

python manage.py runserver 127.0.0.1:8000
!!??数据库中文字符设置

windows:

在解决这个问题一直在纠结怎么修改mysql本身的中文字符修改。

后来发现其实你在创建数据库的时候没有没有设置好中文字符集的编辑!!!

在创建库的时候设置utf8字符集就ok啦(蛋疼,这个bug花了我一天的时间!!!)

创建数据库:

CREATE DATABASE PyDB

CHARACTER SET ‘utf8’

COLLATE ‘utf8_general_ci’;

查看字符类型:SHOW variables LIKE ‘%char%’;

修改字符集:mysql> set character_set_results=utf8;

**查看数据库编码:**SHOW CREATE DATABASE db_name;
**查看表编码:**SHOW CREATE TABLE tbl_name;
**查看字段编码:**SHOW FULL COLUMNS FROM tbl_name;

linux:

https://www.cnblogs.com/cml-py/p/9668644.html

(1)动态设置

创建数据库:

CREATE DATABASE PyDB

CHARACTER SET ‘utf8’

COLLATE ‘utf8_general_ci’;

选择此数据库:

USE PyDB;

创建表:

CREATE TABLE PyTable (

username VARCHAR(10),

useraddr VARCHAR(10)

)ENGINE=InnoDB DEFAULT CHARSET=utf8;

(2)改变默认编码

在mysql下,先执行命令:SHOW variables LIKE ‘%char%’;

查看数据库默认编码是latin1。

以root身份更改mysql的配置文件

在/etc/my.cnf 或 /etc/mysql/my.cnf 添加以下指令并保存:

[client]

default-character-set = utf8

[mysqld]

default-storage-engine = INNODB

character-set-server = utf8

collation-server = utf8_general_ci

然后重启mysql:service mysql restart

再次查看:SHOW variables LIKE ‘%char%’;

可以看到编码已经是UTF8。

网页跳转》返回

!!??cookie
设置静态文件
STATICFILES_DIRS = [
  os.path.join(BASE_DIR, 'static/img'),
  os.path.join(BASE_DIR, 'static/media'),]

图片:

{% load static %}
<img src="{% static 'w1.jpg' %}" alt="" height="50">bboy wing<a href="{% url 'wing' %}"><button style="width:70px">个人资料</button></a><br>

视频:

 <video width="320" height="240" controls>
 <source src="{% static 'v1.mp4' %}" type="video/mp4">
!!??字典图片同时显示
delete from 表名 #删除表内数据
drop 表名 #删除表
!!??添加装饰器
!!??上传文件
form表单
二、html前端

overflow:scroll 设置页面滚动

JS:http://www.w3school.com.cn/js/js_operators.asp

!!??数据创建表
??_mysql.connection.query(self, query)

django.db.utils.OperationalError: (1074, “Column length too big for column ‘info’ (max = 21845); use
BLOB or TEXT instead”)

改用mysql使用

小说网页项目:

!!??注册页面只能输入数字

通过添加cookie来保存

img_name = username + '.jpg'
sql = "insert into app64_user(User_name,Password,Photo)""VALUES ('" + un + "', '" + pw + "', '" + img + "')"

通过添加cookie来保存

需要要用到form表单

                        file_path = os.path.join('static/img', img_name)
                        f = open(file_path, 'wb+')
                        for chunk in up_file.chunks():
                            f.write(chunk)
                        f.close()

时间:

print (time.strftime("%Y-%m-%d %H:%M:%S", time.localtime()))

Redis

??批量操作
#批量操作
conn_r.mset(a='abcd', b='bcde', name='胖胖')
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值