一个简单的Django小实例--表单提交及一些Django细节
初学Django,分享一下一个简单的表单提交保存小实例,以及一些小细节供大家借鉴学习,过程有点粗略,写个大概。
1,首先,建立一个django文件
2,setting.py设置en-hans和Asia/Shanghai
LANGUAGE_CODE = 'zh-hans'
TIME_ZONE = 'Asia/Shanghai'
3,setting数据库设置七个值,第一个不变,最后数据库改成mysql,NAME,USER,PASSWORD,HOST,PORT这几列,分别是你要添加的“数据库名”,“MySQL账户、密码”,“主机地址”,“端口号” 。用于访问mysql数据库
4,添加数据库,并将数据库编码格式设置为charset utf8
5,pycharm中打开MySQL,并找到在里面添加的数据库
6,setting.py文件所在的文件夹下的的init.py文件添加pymysql模块
import pymysql
pymysql.install_as_MySQLdb()
7,迁移数据库python manage.py migrate
,刷新数据库
8,models模块中添加类 ,例如:
class 类名(models.Model):
name=models.CharField(max_length=18)
。。。
性别添加默认值
9,生成迁移文件,然后迁移文件
python manage.py makemigrations
python manage.py migrate
10,如果想改 class 类名,在class下面再添加一个子类
class Meta:
db_table='新名字'
前面基本的类创建完以及准备阶段完成,下面添加url跳转功能
11,urls.py模块中添加一个注册功能的url链接到views
12,在views里生成注册的方法
def register(request):
return render(request, 'register.html')
13,然后编辑register.html文件
14,上面那个链接http://127.0.0.1:8000/do_register/
是跳转到一个新的urls实现具体的把网页输入的内容保存到数据库
15,urls跳转到views里实现具体功能
def do_register
username = request.POST.get('username')
pwd = request.POST.get('password')
mail = request.POST.get('mail')
sex = request.POST.get('sex')
stud = stu()
stud.name = username
stud.password = pwd
stud.mail = mail
stud.sex = sex
stud.save()
return HttpResponse('用户注册成功')
16,最后这样就做好啦,还有几点小细节
1,关于csrf拒绝第三方访问的错误,两种解决办法办法:
一,html文件中第一个form下面添加{% csrf_token %}.
二,setting中MIDDLEWARE中包含csrf的那一行注释掉
2,html文件地址最后不要忘记加斜线,不然会报错
3,{{ ‘里面是变量’ }} , {% 里面是语句 %}
上一篇: lvs- real