zoukankan      html  css  js  c++  java
  • 博客系统-文章操作

    url配置

    url(r'^(?P<username>.*)/backindex/$',views.backIndex),
    url(r'^(?P<username>.*)/backindex/addarticle/$',views.addarticle),
    url(r'^(?P<username>.*)/backindex/delarticle/$',views.delarticle),
    url(r'^(?P<username>.*)/backindex/editarticle/$',views.editarticle),

    视图相关

    添加文章

    import datetime
    def addarticle(request,username):
        if request.method=="GET":
            print("=============这里是直接通过后台跳转过来的")
            article_form = ArticleForm()
            cate_list = models.Category.objects.filter(blog__user=request.user)
            tag_list = models.Tag.objects.filter(blog__user=request.user)
            return render(request,"addarticle.html",locals())
        else:
            article_form = ArticleForm(request.POST)
            if article_form.is_valid():           #验证
                title = request.POST.get("title")
                content = request.POST.get("content")
                article_obj = models.Article.objects.create(title=title, desc=content[0:30],create_time=datetime.datetime.now(),user=request.user)
                models.ArticleDetail.objects.create(content=content,article=article_obj)
                return render(request,"addarticle.html",locals())
            return render(request,"addarticle.html",locals())

    编辑文章

    def editarticle(request,username):
        if request.method=="POST":
    
            return HttpResponse("OK")

    删除文章

    def delarticle(request,username):
        if request.method=="POST":
            response = {"is_del":False}
            article_nid = request.POST.get("article_nid")
            models.Article.objects.filter(nid=article_nid).delete()
            response["is_del"]=True
            return HttpResponse(json.dumps(response))

    前端页面

    增加文章

    {% extends "backendindex.html" %}
    
    {% block manageCon %}
        <span class="success" style="color: red"></span>
    
        <form action="/blog/{{ request.user.username }}/backindex/addarticle/" method="post" novalidate>
            {% csrf_token %}
            <label for="title">文章标题</label>
            <p>{{ article_form.title }}</p>
            <label for="title">文章内容</label>
            <p>{{ article_form.content }}</p>
        <p>文章分类</p>
            {% for cate in cate_list %}
                <input type="radio" name="personal_cate" value="{{ cate.nid }}">{{ cate.title }}
            {% endfor %}
        <p>文章标签</p>
            {% for tag in tag_list %}
                <input type="checkbox" name="personal_tag" value="{{ tag.nid }}">{{ tag.title }}
            {% endfor %}
        </form>
        <button id="submit">提交</button>
    
    
    
    {% endblock %}
    
    
    
    
    
    
    
    
    {% block script %}
    <script>
    
    function foo() {
        $(".success").html("")
    }
    
    
        KindEditor.ready(function(K) {
                    window.editor = K.create('#editor_id',{
                            "800px",
                            height:"400px",
                            resizeType:0,
                            uploadJson:"/uploadFile/",
                            extraFileUploadParams:{
                               csrfmiddlewaretoken:$("[name='csrfmiddlewaretoken']").val(),
                           },
                    });
         });
         $("#submit").click(function () {
             $.ajax({
                 url:"/blog/{{ request.user.username }}/backindex/addarticle/",
                 type:"POST",
                 data:{
                     title:$("[name=title]").val(),
                     content:editor.html(),
                     tag:$("[name=personal_tag]").val(),
                     cate:$("[name=personal_cate]").val(),
                     csrfmiddlewaretoken: $("[name='csrfmiddlewaretoken']").val(),
                 },
                 success:function (data) {
                     editor.html(""),
                     $("[name=title]").val(""),
                     $(".success").html("添加成功"),
                         setTimeout(foo,3000)
                 }
             })
         });
    
        </script>
    {% endblock %}
  • 相关阅读:
    MongoDB安装 & 用户创建增删改查
    MongoDB介绍
    JAVA日报
    JAVA日报
    JAVA日报
    JAVA日报
    JAVA日报
    JAVA日报
    JAVA日报
    JAVA日报
  • 原文地址:https://www.cnblogs.com/52-qq/p/8669554.html
Copyright © 2011-2022 走看看