url(r'^news_manage/edit/$',views.news_edit,name='edit') url配置

<a href="/management/news_manage/edit/?id={{news.id}}">编辑</a>

点击后进入

<form action="{% url 'management:edit' %}?id={{ news_object.id }}" method="post">
题目:
<input type="text" name='title' value={{news_object.title }}><br>
作者:
<input type="text" name='author' value={{news_object.author }}><br>
内容:
<input type="text" name='content' style="width: 500px;height: 300px" value={{news_object.content }}><br>
是否前端显示(0不显示,1 显示):
<input type="text" name='status' value={{news_object.status }}><br>
<input type="submit" value="保存更改"/>
</form>

处理函数为:

@transaction.commit_manually
@csrf_exempt
def news_edit(request):
try:
p = News.objects.get(id=request.GET.get('id'))
if 'content' in request.POST or 'title' in request.POST or \
'status' in request.POST or 'author' in request.POST:
p.content = request.POST.get('content')
p.title = request.POST.get('title')
p.status = request.POST.get('status')
p.author = request.POST.get('author')
p.save()
transaction.commit()
return HttpResponseRedirect(reverse('management:news_manage'))
else:
transaction.commit()
return render_to_response('news/news_edit.html',
{'news_object': p}, context_instance=RequestContext(request))
except News.DoesNotExist:
transaction.rollback()
return render_to_response("error.html",
{'msg': "信息不存在"},
context_instance=RequestContext(request))
except Exception, e:
print e
transaction.rollback()
return render_to_response("error.html",
{'msg': "数据库错误"},
context_instance=RequestContext(request))

PS:render_to_response和HttpResponseRedirect区别,前者是浏览器地址栏不变在浏览器界面更改显示界面。后者是直接跳转到另一个url界面。

django 新闻编辑笔记的更多相关文章

  1. Django初识 学习笔记一

    Django初识 学习笔记一 mvcviewsmodelstemplate. 一 MVC框架 MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(c ...

  2. Django商城项目笔记No.12用户部分-QQ登录2获取QQ用户openid

    Django商城项目笔记No.12用户部分-QQ登录2获取QQ用户openid 上一步获取QQ登录网址之后,测试登录之后本该跳转到这个界面 但是报错了: 新建oauth_callback.html & ...

  3. Django商城项目笔记No.11用户部分-QQ登录1获取QQ登录网址

    Django商城项目笔记No.11用户部分-QQ登录 QQ登录,亦即我们所说的第三方登录,是指用户可以不在本项目中输入密码,而直接通过第三方的验证,成功登录本项目. 若想实现QQ登录,需要成为QQ互联 ...

  4. Django商城项目笔记No.10用户部分-登录接口

    Django商城项目笔记No.10用户部分-登录接口 添加url路由 接下来第二步,增加返回内容: 增加结果如下: 配置:上边的方法定义了返回的内容都有哪些,那这个方法jwt还不知道,需要配置: 修改 ...

  5. Django商城项目笔记No.9用户部分-注册接口签发JWTtoken

    Django商城项目笔记No.9用户部分-注册接口签发JWTtoken 我们在验证完用户的身份后(检验用户名和密码),需要向用户签发JWT,在需要用到用户身份信息的时候,还需核验用户的JWT. 关于签 ...

  6. Django商城项目笔记No.8用户部分-注册接口实现

    Django商城项目笔记No.8用户部分-注册接口实现 users的view.py中增加如下代码 class RegisterUserView(CreateAPIView): "" ...

  7. Django商城项目笔记No.7用户部分-注册接口-判断用户名和手机号是否存在

    Django商城项目笔记No.7用户部分-注册接口-判断用户名和手机号是否存在 判断用户名是否存在 后端视图代码实现,在users/view.py里编写如下代码 class UsernameCount ...

  8. Django商城项目笔记No.6用户部分-注册接口-短信验证码实现celery异步

    Django商城项目笔记No.4用户部分-注册接口-短信验证码实现celery异步 接上一篇,如何解决前后端请求跨域问题? 首先想一下,为什么图片验证码请求的也是后端的api.meiduo.site: ...

  9. Django商城项目笔记No.5用户部分-注册接口-短信验证码

    Django商城项目笔记No.4用户部分-注册接口-短信验证码 短信验证码也保存在redis里(sms_code_15101234567) 在views中新增SMSCodeView类视图,并且写出步骤 ...

随机推荐

  1. IntelliJ IDEA中创建并运行scala应用程序

    1.安装scala插件 2.创建scala项目 下载scala SDK,如果你已经下载了,选择你所下载的版本,点击OK

  2. ural1057 Amount of degrees 位数统计

    #include <iostream> #include <string> using namespace std; ][]; void init(){ f[][] =; ;i ...

  3. IOS 表视图(UITableVIew)的使用方法(6)表视图的编辑功能(新增Add)

    表视图的新增功能和删除功能虽然目的不同,但是工作流程是相似的 下面列出在处理新增的回调函数时,与删除所不同的逻辑部分代码. 显示下过如下: #pragma mark #pragma mark Tabl ...

  4. 国内外主流BI厂商对比

    BI(Business Intelligence),即商业智能或者商务智能,它是一套完整的解决方案,用来将企业中现有的数据进行有效的整合,快速准确的提供报表并提出决策依据,帮助企业做出明智的业务经营决 ...

  5. Struts2 中action之间的跳转(分享)

    例如从你的login.action到register.action  有两种实现方式 1. 设置type="redirect" <package  name="st ...

  6. windows XP 安装pip

    1.首先安装Python 2.添加环境变量 我的是 path = C:\Python27 3.下载setuptools 这里可参考这篇博文,附带资源的:http://blog.csdn.net/sud ...

  7. Android4.3模拟器界面中右侧菜单按钮无法使用问题解决办法

    开发环境:笔记本电脑Windows2008+MyEclipse 10+Android4.3 问题描述:运行或者调试Android项目时,发现模拟器中右侧Menu按钮无法点击,截图如下: 查看在Andr ...

  8. 具体解释coredump

    一,什么是coredump 我们常常听到大家说到程序core掉了,须要定位解决,这里说的大部分是指相应程序因为各种异常或者bug导致在执行过程中异常退出或者中止,而且在满足一定条件下(这里为什么说须要 ...

  9. hdu4300之KMP&&EKMP

    Clairewd’s message Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Other ...

  10. C#静态方法

    C#静态方法     学习C#静态函数及变量的一个精典例子与代码 (1)用于对静态字段.只读字段等的初始化. (2)添加static关键字,不能添加访问修饰符,因为静态构造函数都是私有的. (3)类的 ...