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. [LeetCode]题解(python):108-Convert Sorted Array to Binary Search Tree

    题目来源: https://leetcode.com/problems/convert-sorted-array-to-binary-search-tree/ 题意分析: 给出一个排好序的数组,根据这 ...

  2. c 语言 指针 与地址

    1.如何实现交换两个数的值 void swap( int *a,int *b) { int  tep=*a;//*a其实就是主函数a的值,a是主函数存a数值的地址. *a =*b; *b =tep; ...

  3. C#计算时间差。

    C#中怎么计算两时间相差多少.计算2个时间之间的差,可以计算到时分秒! <1>label1.Text = “2004-1-1 15:36:05″;label2.Text = “2004-3 ...

  4. php 实现简单的登录

    //登录页面: V层前端模板: Administrator@QCEE61NZ66FEX2D /cygdrive/c/wamp/www/thinkphp/Home/Tpl/Login $ ls inde ...

  5. HDU 1157 Who's in the Middle

    #include <cstdio> #include <algorithm> using namespace std; int main() { int n; while(sc ...

  6. 使用Linux静态库

    查看静态库.a文件包含的内容用下面的命令解压: ar x libgdal.a 然后就可以查看文件了: ls adler32.o cpl_recode.o dted_create.o gdalpamra ...

  7. php:根据中文裁减字符串函数方法

    define(CHARSET, 'UTF-8'); // 系统默认编码 /** * 根据中文裁减字符串 * @param $string - 字符串 * @param $length - 长度 * @ ...

  8. 关于移动端 rem 布局的一些总结

    [资源一]基础知识恕不回顾 基础知识参考以下两篇博客: http://isux.tencent.com/web-app-rem.html http://www.w3cplus.com/css3/def ...

  9. 基本属性 - iOS中的本地通知

    本地通知的基本使用 创建本地通知 设置属性 调度通知(添加通知到本地通知调度池) 注册用户通知权限(只需一次, 可以单独放在Appdelegate中, 或者别的地方) —> iOS8以后必须, ...

  10. 杭电ACM 偶数求和

    偶数求和 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submi ...