《Python编程:从入门到实践》学习笔记

本文是《Python编程:从入门到实践》第19章的学习笔记,聚焦于让用户通过Django应用程序输入数据。首先介绍了如何创建用于添加新主题的表单,包括ModelForm的使用、URL模式、视图函数、GET和POST请求处理,以及模板new_topic的设计。接着,详细阐述了添加新条目的过程,涉及相同步骤的表单、URL模式、视图函数、模板new_entry及其链接设置。
摘要由CSDN通过智能技术生成

2022年11月12日

第19章 用户账户

19.1 让用户能够输入数据

19.1.1 添加新主题

1.用于添加主题的表单

在Django中,创建表单的最简单方式是使用ModelForm,它根据我们在第18章定义的模型中
的信息自动创建表单。创建一个名为forms.py的文件,将其存储到models.py所在的目录中,并在
其中编写你的第一个表单:

models.py

from django import forms

from .models import Topic


class TopicForm(forms.ModelForm):
    class Meta:
        model = Topic
        fields = ['text']
        labels = {
   'text': ''}

说明:注意单词拼写要正确,我第一次把fields误写为field,太粗心了!!!

2. URL模式new_topic

这个新网页的URL应简短而具有描述性,因此当用户要添加新主题时,我们将切换到
http://localhost:8000/new_topic/。下面是网页new_topic的URL模式,我们将其添加到
learning_logs/urls.py中:

urls.py

"""定义learning_logs的URL模式"""
--snip--
urlpatterns = [
    --snip--
    # 用于添加新主题的网页
    path('new_topic/', views.new_topic, name='new_topic'),
]
3. 视图函数new_topic()

函数new_topic()需要处理两种情形:刚进入new_topic网页(在这种情况下,它应显示一个
空表单);对提交的表单数据进行处理,并将用户重定向到网页topics:
views.py

--snip--
from django.http import HttpResponseRedirect
from django.urls import reverse
from .forms import TopicForm
--snip--

def new_topi
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值