首页 > 代码库 > python 3.5 django 笔记(五)编辑文章

python 3.5 django 笔记(五)编辑文章

技术分享


技术分享





上一会已经使用了超链接功能

这回我们要给博客添加内容了

这是今天的效果图

技术分享


1、

创建修改页面

在templates/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">
<!--将数据传递给后台-->
{% csrf_token %}
    <label>文章标题
        <input type="text" name="title"/>
        <!--title值-->
  </label>
    <br/>
    <label>文章内容
        <input type="text" name="content"/>
        <!--content值-->
    </label>
    <br/>
    <input type="submit" value="http://www.mamicode.com/提交">
</form>


</body>
</html>


2、

修改views.py(经典的页面操作文件)

添加下面的内容

def edit_page(request):
    #定义显示页面
    return render(request, ‘blog/edit_page.html‘)
    #只做页面显示
    
    
def edit_action(request):
    #页面操作,刚刚html文件传递到这个函数
    title = request.POST.get(‘title‘, ‘TITLE‘)
    #html输入的title值
    content = request.POST.get(‘content‘,‘CONTENT‘)
    #html输入的content值
    models.Article.objects.create(title=title, content=content)
    #将title和content创建对象
    articles = models.Article.objects.all()
    #更新
    return render(request,‘blog/index.html‘,{‘articles‘:articles})
    #返回index页面,然后刷新已传递的值



3、

改完views.py,肯定要修改ursl(一一对应)

from django.conf.urls import url

from . import views

urlpatterns = [
    url(r‘^index/$‘, views.index),
    url(r‘^article/(?P<article_id>[0-9]+)/$‘, views.article_page, name="article_page"),
    #多了下面两行
    url(r‘^edit/$‘, views.edit_page, name=‘edit_page‘),
    #name是标识
    url(r‘^edit/action$‘, views.edit_action, name=‘edit_action‘),

]


打开:http://127.0.0.1:9999/blog/edit/action


技术分享


技术分享


显示正常囖~~~~技术分享技术分享技术分享技术分享技术分享





回到index.html,完善一下新文章,让他跳转到添加文章的页面去

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>

<h1><a href="http://www.mamicode.com/#">我的博客</a> </h1>
<h2><a href="http://www.mamicode.com/{% url ‘blog:edit_page‘ %}">新文章</a> </h2>
<!-- 主要来这里{% url ‘blog:edit_page‘ %}跳转到blog标识下的edit_page页面-->


{% for articles in articles %}
<a href="http://www.mamicode.com/{% url ‘blog:article_page‘ articles.id %}">{{ articles.title }}</a>
<br/>
{% endfor %}
</body>
</html>



python 3.5 django 笔记(五)编辑文章