【问题标题】:how to add a method to a class template view如何将方法添加到类模板视图
【发布时间】:2021-04-09 01:05:57
【问题描述】:

大家新年快乐...我是 django 的新手,我正在做一个项目,一个简历页面我需要联系我部分的帮助,我想做一些我在视频中看到的事情 https://www.youtube.com/watch?v=w4ilq6Zk-08。我以前学的书只用class来查看模板。下面是我的代码

from django.views.generic import TemplateView
from django.shortcuts import render
# Create your views here.
class ProfilePageView(TemplateView):
    template_name = 'femi_profile.html'

    def contact(request):
        if request.method == "POST":
            name = request.POST['name']
            email = request.POST['email']
            subject = request.POST['subject']
            message = request.POST['message']

            return render(request, 'femi_profile.html', {'contact_name': name})

        else:
            return render(request, 'femi_profile.html', {})

【问题讨论】:

    标签: python-3.x django-views django-forms django-templates django-3.1


    【解决方案1】:

    在再次阅读了 django 文档https://docs.djangoproject.com/en/3.1/topics/class-based-views/intro/ 并尝试了不同的代码行之后,我终于得到了运行,我不是在问它为什么运行?我想出了如何解决这个问题。

    在下面找到正确的代码

    from django.views.generic import TemplateView
    from django.shortcuts import render
    # Create your views here.
    
    class ProfilePageView(TemplateView):
        template_name = 'femi_profile.html'
    
        def get(self, request, *args, **kwargs):
            return render(request, self.template_name, {})
    
        def post(self, request, *args, **kwargs):
            if request.method == "POST":
                name = request.POST['name']
                email = request.POST['email']
                subject = request.POST['subject']
                message = request.POST['message']
    
                return render(request, self.template_name, {'contact_name': name})
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-07-10
      • 2022-01-19
      • 2014-12-12
      • 2016-07-02
      相关资源
      最近更新 更多