-day3

-day3,第1张

```python
创建django项目和应用
1. 注册成功跳转到登录页面
2. 在登录页面显示注册这条数据,

   定义商品模型类  商品名  数量 单价  生产地
   登录成功 跳转到全部商品列表页以表格的形式展示    
 
3.自己模拟一下注册和登录
4.要将注册的数据存到数据库里     模型类.objects.create(字段=寸得数据)
5.登录时  从数据库中读取数据来进行登录
```

1. 创建django项目

2. 创建django应用

3. 配置文件

   注册app

   模板目录

   数据库

4. 编写模型类

5. 迁移

6. 创建超级用户--向表中添加数据

7. 注册模型类

8. 写视图

9. 配路由

10. 启动项目

FBV:函数视图  

CBV:类视图

```python
from django.shortcuts import render
from django.views import View
# 定义注册类视图
class RegisterView(View):
    def get(self,request):
        return render(request, 'register.html')
    def post(self,request):
        # 获取注册的数据,将数据在登录页面展示
        name1 = request.POST.get("username")
        pwd1 = request.POST.get("password")
        mobile1 = request.POST.get("mobile")
        # 将获取到的数据传到登录页面
        data = {
            "name": name1,
            "pwd": pwd1,
            "mobile": mobile1
        }
        return render(request, 'login.html', data)
    
    # 给类视图配置路由  as_view():会自动判断请求方式,执行对应类视图中的请求方式
    path("register/",views.RegisterView.as_view())
```

注册页面:s

```python
# 定义注册类视图
class RegisterView(View):
    def get(self,request):
        return render(request, 'register.html')
    def post(self,request):
        # 获取注册的数据,将数据在登录页面展示
        name1 = request.POST.get("username")
        pwd1 = request.POST.get("password")
        mobile1 = request.POST.get("mobile")
        # django中的添加  模型类.objects.create()  等同于 insert into 表名 values()
        try:  # 后边存放可能出现异常时的代码
            Users.objects.create(name=name1,password=pwd1,mobile=mobile1)
        except Exception as e:
            print(e)
            return HttpResponse("注册失败")
        # 注册成功跳转到登录页面
        # return HttpResponse("注册成功")
        # 注册成功重定向到登录页面
        return redirect('/login/')
```

```html



   
    注册页面



    {% csrf_token %}
    用户名:

    密码:

   


登录思路:

登录相当于查询数据

1. 创建django项目

2. 创建django应用

3. 配置文件

   数据库、模板目录、注册app

4. 写模型类:相当于创建数据表,和迁移一起 *** 作

5. 迁移

6. 创建超级用户

7. 注册模型类

8. 写视图函数

9. ```python
   from django.shortcuts import render,HttpResponse
   from django.views import View
   from myapp.models import Users,Heros
   # Create your views here.
   # 定义注册视图
   class Register(View):
       def get(self,request):
           # 将注册页面渲染出来
           return render(request,'register.html')
       # 获取注册数据
       def post(self,request):
           name1 = request.POST.get("username")
           pwd1 = request.POST.get("pwd")
           mobile1 = request.POST.get("mobile")
           # 如果数据表中存在相同的用户名提示用户名已存在
           # 1.先获取用户表中所有数据  模型类.objects.all()
           users = Users.objects.all()  # 查询的是用户表中所有信息
           # 循环遍历获取到的数据
           for user in users:  # user:代表每条数据
               # name1:代表接收的注册数据
               if name1 == user.name:
                   return HttpResponse("用户名已存在")
           try:
               # 将数据存到数据库  模型类.objects.create()
               Users.objects.create(name=name1,pwd=pwd1,mobile=mobile1)
           except Exception as e:
               print(e)
               return HttpResponse("注册失败")
           return HttpResponse("注册成功")

10. 配置路由

11. ```python
    urlpatterns = [
        # 配置注册路由
        path('register/',views.Register.as_view()),
    #     配置英雄路由
        path("hero//",views.Hero.as_view()),
        path("hero//", views.Hero.as_view())
    ]
    ```

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/741405.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-28
下一篇 2022-04-28

发表评论

登录后才能评论

评论列表(0条)

保存