返回主目录:Django框架
1.pycharm连接数据库及相应操作
2.手撸登录注册编辑删除
-
登录、注册
-
ORM简单操作
-
编辑、删除
3.完整代码
一、pycharm连接数据库及相应操作
此处附上链接地址:https://www.cnblogs.com/xt12321/p/10992542.html
二、手撸登录注册编辑删除
(1)登录 1> 先在urls.py里面添加路由设置 2> 再在视图层 view.py里面定义login的处理逻辑 3> 在templates文件夹里面,添加上login.html文件 这样三步下来之后,便可以在本机上访问本地的登录界面 urls.py文件 --> urlpatterns中添加路由: url(r'^login/', views.login), views.py文件 --> 处理路由逻辑 # 如果请求方式是POST 表示是请求登录的操作 # 先去数据库拿数据,再匹配密码是否正确, # 不正确则进行提示,并返回登录页,正确则进入图书列表界面 # 如果请求方式是GET,那么则直接返回登录界面回去就可以了 ps:有一个问题就是: 当导入的js文件就是服务器本地的文件的时候,会报错, 需要在settings.py里面设置STATICFILES_DIRS STATICFILES_DIRS = [ os.path.join(BASE_DIR, 'static'), ]
(2) 注册 逻辑与登录类似,只是在返回页面的时候改成reg.html 1> 用户打开注册页面,服务端返回一个reg.html页面 2> 用户提交注册信息,服务端处理注册操作,返回相应结果 3> templates文件夹中同样得有reg.html文件 ps: <1>当将form表单的提交方式改为post时,由于未配置csrf中间件,会报403错误 此时只要将settings.py文件中的MIDDLEWARE列表中的csrf注释掉就行 <2> 注册提交的数据格式: <QueryDict: {'username': ['lisi'], 'password': ['123']}> 通常取值方式有: 1> 通过request.POST.get(key) 取值 --> 取出单个的元素 2> 通过request.POST['password'] 取值 --> 不推荐,会报错 通过get方法去除的值是单个的(列表最后一个元素),如果列表中的数据为多个值的时候; 通过使用 getlist 方法,便可以取出列表中所有的值,常用于:多选框 <3> 获取get请求的数据,与操作post一毛一样!!
def login(request): # 如果请求方式是POST 表示是请求登录的操作 # 先去数据库拿数据,再匹配密码是否正确, # 不正确则进行提示,并返回登录页,正确则进入图书列表界面 # 如果请求方式是GET,那么则直接返回登录界面回去就可以了 if request.method == 'POST': # username = request.POST.get('username') # password = request.POST.get('password') user_list = models.User.objects.all() print(user_list) for item in user_list: print(item, type(item), item.id, item.pk, item.name, item.password) return render(request, 'login.html')