为了账号安全,请及时绑定邮箱和手机立即绑定

每次修改文章,都会新建一个,原来那个也会保留

http://img1.sycdn.imooc.com//59740a5500018a4102570395.jpg

http://img1.sycdn.imooc.com//59740a550001532c06790393.jpg

http://img1.sycdn.imooc.com//59740a550001fd3b05590558.jpg

为什么会出现这样的问题


正在回答

6 回答

view.py下面的edit_action函数下id取值变量名出现错误:

改成:article_id = request.POST.get('article_id',"0")

就可以啦

如果不是这个问题,看一下其他用到article_id和article.id的地方,两个表示有没有用混的,我的已经解决啦


0 回复 有任何疑惑可以回复我~

我跟你情况一样,怎么解决的?

0 回复 有任何疑惑可以回复我~

这个问题,主要是article.id传递的时候出现了问题,我按照以前的方法可以了。老师讲的新的方法,

blog/edit_page.html

<!DOCTYPE html>
<html lang="en">
<head>
   <meta charset="UTF-8">
   <title>edit page</title>
</head>
<body>
<form action="{% url 'blog:edit_action' %}" method="post">
   <!--注意:403错误-->
{% csrf_token %}

{% if article %}

   <input type="hidden" name="article_id" value="{{ article.id }}">
   <label>文章标题
       <input type="text" name="title" value="{{ article.title }}">
   </label>
   <br/>
    <label>文章内容
       <input type="text" name="content" value="{{ article.content }}">
   </label>
   <br/>
{% else %}
   <input type="hidden" name="article_id" value="0">
   <label>文章标题
       <input type="text" name="title" value="{{ article.title }}">
   </label>
   <br/>
    <label>文章内容
       <input type="text" name="content" value="{{ article.content }}">
   </label>
   <br/>
{% endif %}

0 回复 有任何疑惑可以回复我~
#1

MGY9012

不是这个这个问题吧
2018-08-07 回复 有任何疑惑可以回复我~

同问。

0 回复 有任何疑惑可以回复我~

意思就是,你的article_id取值为0,进入if,创建了一个新的对象,而不是修改原来的对象

0 回复 有任何疑惑可以回复我~

你在修改文章的时候,看一下你的代码走if还是不走if,你就知道问题了

0 回复 有任何疑惑可以回复我~
#1

_木头_ 提问者

能说具体一点么。。。。O(∩_∩)O
2017-07-23 回复 有任何疑惑可以回复我~
#2

LittleCoal 回复 smart_leizi

能说下怎么改吗
2017-08-12 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
django入门与实践
  • 参与学习       65159    人
  • 解答问题       869    个

手把手带你进入Django开发的大门,充分领略Django的魅力

进入课程

每次修改文章,都会新建一个,原来那个也会保留

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信