当前位置: 首页 > news >正文

帮企业建设网站和推广网站新开传奇网站999新服网

帮企业建设网站和推广网站,新开传奇网站999新服网,saas是不是做网站,微商城网站制作使用ArticleColumnForm表单,向数据库提交内容,内容包括column。如果同一用户提交的column重复,则提示表单出错,表单提交失败后,重新渲染表单提交html页面,其中提示错误信息。 涉及的代码包括: …

使用ArticleColumnForm表单,向数据库提交内容,内容包括column。如果同一用户提交的column重复,则提示表单出错,表单提交失败后,重新渲染表单提交html页面,其中提示错误信息。

涉及的代码包括:

1、forms.py

添加__init__方法,初始化表单时,包含提交表单的用户信息。

添加clean_column方法,检查column是否重复

from django import forms
from .models import ArticleColumnclass ArticleColumnForm(forms.ModelForm):def __init__(self, *args, **kwargs):user = kwargs.pop('user', None)super(ArticleColumnForm, self).__init__(*args, **kwargs)self.user = userclass Meta:model = ArticleColumnfields = ('column',)def clean_column(self):column = self.cleaned_data.get('column')user = self.user  # 获取传递的用户信息if ArticleColumn.objects.filter(user=user, column=column).exists():raise forms.ValidationError('You have already created a column with this name.')return column

2、views.py

只有在form的valid检查通过后,才进行页面的重定向,否则重新渲染add_column.html页面。渲染是使用的form不是空表,而是刚才提交的,包含错误信息的form。

@login_required
def add_column(request):if request.method == 'POST':# 获取表单article_column_form = ArticleColumnForm(data=request.POST, user=request.user)#初始化表单时,包含用户信息if article_column_form.is_valid():new_articlecolumn = article_column_form.save(commit=False)  # 创建数据库对象,commit=False,不提交new_articlecolumn.user = request.user# 将数据库对象写入new_articlecolumn.save()return HttpResponseRedirect('/article/article-column')  # 写完数据后,重定向到数据显示页面else:article_column_form = ArticleColumnForm()context = {'article_column_form':article_column_form}return render(request, 'article/column/add_column.html', context)

3、提交表单的html页面

添加form错误显示区域。

<form class="form-horizontal" action="." method="post">{% csrf_token %}<div class="row"><div class="col-md-4 text-right"><span>栏目名称:</span></div><div class="col-md-8 text-left">{{ article_column_form.column }}</div></div>{% if article_column_form.column.errors %}<div class="errors"><ul>{% for error in article_column_form.column.errors %}<li>{{ error }}</li>{% endfor %}</ul></div>{% endif %}<div class="button-group"><button type="submit">Submit</button><button type="button" onclick="window.location.href='{% url 'article:article_column' %}'">Cancel</button></div></form>

http://www.yayakq.cn/news/202254/

相关文章:

  • wordpress查看站点企业系统化管理
  • c2c网站开设店铺山东城市建设学院网站
  • 网站左侧 导航招聘网站开发的要求
  • 可以做网站的公司微信管理系统下载
  • 网站建设花费外包优化网站
  • 免费的网站推广平台网站建设与运营的课程总结
  • 二级目录做网站如何搭建本地wordpress
  • 淘宝客网站一定要备案吗o2o电商交易类平台有哪些
  • 惠州网站建设咨询php网站建设流程
  • 营销型网站建设公司方法和技巧东坑镇网站建设公司
  • 做网站风险微信商城小程序免费制作平台
  • 外国人做中国英语视频网站吗无极网站建设
  • wap建站程序源码数据库如何存储wordpress
  • 服务器网站怎么用毕业设计网站建设体会
  • 建站模板有哪些单位做网站有哪些
  • 做电影网站用什么软件外贸论坛有哪些平台
  • 焦作建设网站哪家好国内最新新闻报道
  • wordpress中文杂志主题宁波seo推广优化哪家强
  • 抖音带运营3种合作方式丹东抖音seo精英
  • 申请了域名 网站怎么建设呢软件开发工程师就是程序员吗
  • 常州网站设计sem优化师工资
  • html5网站设计欣赏做电影网站一年赚多少钱
  • 如何做seo和网站网址搜索引擎入口
  • mvc4 做网站新网站做外链
  • 长沙网站推广合作排名优化公司案例
  • 做网站西宁流放之路做长老环的网站
  • 如何做一款服装网站百度导航和百度地图
  • 小程序软件制作网站如何做登陆界面的网站
  • 浙江网站制作公司设计理论网站
  • 如何设置网站关键字做美陈网站