会话保持及Form表单

mac2022-06-30  110

1,cookie技术视图views里面:def index(request): #获取请求中的cookie num = request.COOKIES.get('num') if num: num = str(int(num) + 1) else: num = '1' response = render(request, 'teacher/index.html', context={'num':num})   #设置cookie response.set_cookie('num', num) return response2,session技术 def index(request): #获取请求中的cookie name = request.session.get('name') return render(request, 'teacher/index.html', context={'name': name}) def login(request): if request.method == 'POST': username = request.POST.get('username', '') password = request.POST.get('password', '') if username == 'xinlan' and password == '123456':   #首页检查有没有name,没有name就显示未登录,有name就显示用户名        request.session['name'] = username        request.session.set_expiry(10) #过期时间   #跳转到首页面        return redirect(reverse('teacher:index')) return render(request, 'teacher/login.html') 安全退出views: def logout(request): request.session.flush() return redirect(reverse('teacher:index'))index: <a href="{% url 'teacher:logout' %}">安全退出</a> urls: path('logout/', views.logout, name='logout'), 3,form表单app--teacher 下新建forms.py文件

 

4,模型表单

过滤器

@register.simple_tag()def add_class(field, class_str): return field.as_widget(attrs={'class': class_str})models: class Student(models.Model): name = models.CharField('姓名', max_length=20) age = models.SmallIntegerField(default=0) sex = models.SmallIntegerField('性别', default=1) qq = models.CharField(max_length=20, unique=True, null=True, error_messages={'unique':'qq号码重复!'}) phone = models.CharField(max_length=20, unique=True, null=True) grade = models.ForeignKey('Grade', on_delete=models.SET_NULL, null=True) c_time = models.DateTimeField(verbose_name='创建时间', auto_now_add=True) e_time = models.DateTimeField(verbose_name="编辑时间", auto_now=True) is_deleted = models.BooleanField(default=False) def __str__(self): return '%s-%s' % (self.name, self.age)

转载于:https://www.cnblogs.com/wdty/p/10482619.html

最新回复(0)