blog (后续更新)

Posted hello!world!

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了blog (后续更新)相关的知识,希望对你有一定的参考价值。

 

 

设计Model(设计数据库)

from django.db import models

# Create your models here.

class BlogsPost(models.Model):
    title =models.CharField(max_length=150)  #标题
    body =models.TextField()   ##内容
    timestamp = models.DateTimeField() ##时间

初始化数同步据库

python manage.py makemigrations
python manage.py migrate

  

创建blog的公共部分

从Django的角度看,一个页面具有三个典型的组件:

一个模板(template):模板负责把传递进来的信息显示出来。

一个视图(view):视图负责从数据库获取需要显示的信息。

一个URL模式:它负责把收到的请求和你的试图函数匹配,有时候也会向视图传递一些参数。

 

创建模板

index.html

{% extends \'base.html\' %}
{# 导入母板 #}
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>

</head>
<body>
    {% block content %} 
{#      content  内容,blog_list传过来的数据 #}
        {% for post in blog_list %}
            <h2>{{ post.title }}</h2>
            <p>{{ post.timestamp }}</p>
            <p>{{ post.body }}</p>
        {% endfor %}
    {% endblock %}
</body>
</html>

  

创建视图函数

views.py

#coding=utf-8
from django.shortcuts import render
from blog.models import BlogsPost
from django.shortcuts import render_to_response

# Create your views here.
def index(request):
    blog_list = BlogsPost.objects.all() #获取数据库里面所拥有BlogPost对象
    return render_to_response(\'index.html\',{\'blog_list\':blog_list})
    #ender_to_response()返回一个页面(index.html),顺带把数据库中查询出来的所有博客内容(blog_list)也一并返回。

  

创建blog的URL模式    

urls.py   

from app1 import views
urlpatterns = [
    url(r\'^admin/\', admin.site.urls),
    url(r\'^blog/\',views.blog),
]

  

创建基础模板

templates目录里创建base.html的模板:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
         <style type="text/css">
        body{color:#efd;background:#453;padding:0 5em;margin:0}
        h1{padding:2em 1em;background:#675}
        h2{color:#bf8;border-top:1px dotted #fff;margin-top:2em}
        p{margin:1em 0}
      </style>
</head>
<body>
<h1>孙其虎blog</h1>
    <h3>人生苦短,我学python</h3>
    {% block content %}
    {% endblock %}

</body>
</html>

  

修改index.html模板,让它引用base.html模板和它的“content”块。

 

{% extends \'base.html\' %}
{# 导入母板 #}
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>

</head>
<body>
    {% block content %}
{#      content  内容,blog_list传过来的数据 #}
        {% for post in blog_list %}
            <h2>{{ post.title }}</h2>
            <p>{{ post.timestamp }}</p>
            <p>{{ post.body }}</p>
        {% endfor %}
    {% endblock %}
</body>
</html>

  

 

 

以上是关于blog (后续更新)的主要内容,如果未能解决你的问题,请参考以下文章

后续不再更新转战 github了

使用后续突变和缺失片段中继 commitUpdate 回调

js常用代码片段

typescript Angular 2测试片段。代码库https://developers.livechatinc.com/blog/category/programming/angular-2/

js常用代码片段(更新中)

css常用代码片段 (更新中)