django中views模块定义方法(save())写入数据库不执行

  1. 首先小弟第一次玩csdn,文章写得不好还请看客老爷们多多包涵
    在这里插入图片描述

  2. 我使用forms的方式去添加内容到HTML界面中!

class CardForm(forms.Form):
    cardnum = forms.CharField(label="校园卡卡号", max_length=128, widget=forms.TextInput(attrs={'ng-model': 'fName', 'ng-disabled':'!edit', 'class': 'form-control', 'placeholder': '卡号'}))
    name = forms.CharField(label="姓名", max_length=20,widget=forms.TextInput(attrs={'ng-model': '1Name', 'ng-disabled':'!edit', 'class': 'form-control', 'placeholder': '真实姓名', 'autofocus': ''}))
    consume_time = forms.CharField(label="消费时间", max_length=20,widget=forms.TextInput(attrs={'ng-model': '1Name', 'ng-disabled':'!edit' ,'class': 'form-control', 'placeholder': "消费时间", 'autofocus': '' ,'type':'datetime-local'}))
    consume_money = forms.CharField(label="消费金额", max_length=20,widget=forms.TextInput(attrs={"ng-model":"consume_monney", "ng-disabled":"!edit" ,'class': 'form-control', 'placeholder': "消费金额", 'autofocus': ''}))
    rest_money = forms.CharField(label="剩余金额", max_length=20,widget=forms.TextInput(attrs={"ng-model":"rest_monney", "ng-disabled":"!edit" ,'class': 'form-control', 'placeholder': "剩余金额", 'autofocus': ''}))

3. django框架中在views中定义方法去拿到前端数据保存到数据库中为什么不显示呢?

def cardtest(request):
    if request.method == 'POST':
        username = request.session.get('username', '')
        list_data = models.User.objects.filter(username=username)
        Card_form = forms.CardForm(request.POST) #  从 forms中拿到对应的form
        if Card_form.is_valid():
            consume_time = Card_form.cleaned_data.get('consume_time')
            consume_money = Card_form.cleaned_data.get('consume_money')
            rest_money = Card_form.cleaned_data.get('rest_money')
            card = Card_form.cleaned_data.get('card')
            new_consume = models.Cardmoney()  # 实例化对象
            new_consume.cardnum = list_data.pk
            new_consume.card = card
            new_consume.consume_time = consume_time
            new_consume.consume_money = consume_money
            new_consume.rest_money = rest_money
            new_consume.save()
    Card_form= forms.CardForm()
    return render(request, 'cardApp/cardtest.html', locals())

4. 看客老爷们 你们有什么小妙招能够帮帮我吗?小生初入django 谢谢
在这里插入图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,下面是一个基于 Django 的 auth 的登录和注册模块的示例代码: ### urls.py ```python from django.urls import path from . import views app_name = 'accounts' urlpatterns = [ path('login/', views.user_login, name='login'), path('logout/', views.user_logout, name='logout'), path('register/', views.user_register, name='register'), ] ``` ### views.py ```python from django.shortcuts import render, redirect from django.contrib.auth import authenticate, login, logout from django.contrib import messages from .forms import UserLoginForm, UserRegistrationForm def user_login(request): if request.method == 'POST': form = UserLoginForm(request.POST) if form.is_valid(): cd = form.cleaned_data user = authenticate(request, username=cd['username'], password=cd['password']) if user is not None: if user.is_active: login(request, user) messages.success(request, '登录成功!') return redirect('blog:post_list') else: messages.error(request, '账户被禁用!') return redirect('accounts:login') else: messages.error(request, '无效的用户名或密码!') return redirect('accounts:login') else: form = UserLoginForm() return render(request, 'accounts/login.html', {'form': form}) def user_logout(request): logout(request) messages.success(request, '注销成功!') return redirect('blog:post_list') def user_register(request): if request.method == 'POST': user_form = UserRegistrationForm(request.POST) if user_form.is_valid(): new_user = user_form.save(commit=False) new_user.set_password(user_form.cleaned_data['password']) new_user.save() messages.success(request, '注册成功!请登录。') return redirect('accounts:login') else: user_form = UserRegistrationForm() return render(request, 'accounts/register.html', {'user_form': user_form}) ``` ### forms.py ```python from django import forms from django.contrib.auth.models import User class UserLoginForm(forms.Form): username = forms.CharField() password = forms.CharField(widget=forms.PasswordInput) class UserRegistrationForm(forms.ModelForm): password = forms.CharField(label='密码', widget=forms.PasswordInput) password2 = forms.CharField(label='重复密码', widget=forms.PasswordInput) class Meta: model = User fields = ('username', 'first_name', 'last_name', 'email') def clean_password2(self): cd = self.cleaned_data if cd['password'] != cd['password2']: raise forms.ValidationError('两次输入的密码不匹配!') return cd['password2'] ``` 以上是一个基于 Django 的 auth 的登录和注册模块的示例代码,你可以根据自己的需求进行修改和扩展。在注册和登录成功或失败的情况下,我们使用了 Django 内置的 messages 库,可以在模板以 Bootstrap 的样式显示提示信息。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值